Boa tarde,
Gostaria de saber qual o código para Abrir um "folder" específico do Windows através de um botão de um formulário.
Isto é com código em VBA ...
Tenho andado ás voltas com isto e não estou a conseguir executar o código de forma correta.
Agradeço desde já a quem me puder ajudar.
Cumprimentos
danielricardo15
Olá
Experimenta,
Código:
dim strcaminho as string
strCaminho = "C:\caminho"
Application.FollowHyperlink strCaminho
Se o ficheiro se encontra na mesma pasta que o ficheiro do
Access podes tentar,
Código:
Dim strFicheiro As String
strFicheiro = CurrentProject.Path & "\Ficheiro"
Application.FollowHyperlink strFicheiro
nioxys muito obrigado pela tua preciosa ajuda
Introduzi o código que me forneceste no botão do meu formulário e fiquei com ele desta forma:
Private Sub Comando40_Click()
Dim strcaminho As String
strcaminho = "C:\Users\User\Desktop\Projecto Access\Processos"
Application.FollowHyperlink strcaminho
End Sub
no entanto não acontece nada, devo estar a fazer algo errado :$
(26-09-2013 17:33)nioxys Escreveu: [ -> ]Olá
Experimenta,
Código:
dim strcaminho as string
strCaminho = "C:\caminho"
Application.FollowHyperlink strCaminho
Se o ficheiro se encontra na mesma pasta que o ficheiro do Access podes tentar,
Código:
Dim strFicheiro As String
strFicheiro = CurrentProject.Path & "\Ficheiro"
Application.FollowHyperlink strFicheiro
Afinal Resolvi o problema, o erro foi meu no nome do botão, e resultou perfeitamente, muito obrigado pela ajuda
Já agora o meu plano é criar uma lista que disponibiliza clientes e cada um deles têm um folder próprio com ficheiros, será que há alguma forma de clicar neste mesmo botão e abrir o folder especifico de cada cliente?
De nada.
Sim, é possível, mas a melhor forma de o fazer é se a pasta em questão tiver como nome algo que esteja presente na base dados, como por exemplo, o código do cliente, etc.
Ficava algo do género
Código:
dim strcaminho as string
strCaminho = "C:\caminho"
Application.FollowHyperlink strCaminho & "\" & me!codcliente
Diz-me como tens o nome da pasta.
O nome da Pasta é "Processos" dentro dela estariam outras pastas com o nome de cada cliente e dentro delas os ficheiros correspondentes, o que eu fiz foi criar um formulário para visualizar e editar a base de dados de clientes , e o meu objetivo era poder clicar no botão seguinte e ao visualizar esse cliente clicar no botão para abrir a pasta correspondente e repetir o mesmo processo para outros.
tenho como chave primária na base de dados o campo "Nome"
Começando pelo fim, ter como chave primária o campo
"Nome" não é boa ideia. A chave primária não permite duplicações, é um identificador único de cada registo. Agora imagina que tens dois clientes com o mesmo nome, como fazes?
Relativamente à pasta, se o nome da mesma não estiver presente num campo da base de dados torna-se mais complexo.
Eu criei um exemplo onde o nome da pasta é o
NIF de cada cliente, ao navegares nos vários registos sempre que clicares no botão "
Abrir Pasta" o
Access abre a pasta referente a esse cliente.
Coloquei as pastas no mesmo directório da
BD, dentro da pasta
Data. Não me lembrei de lhe chamar processos.
Exemplo Access - Download
(Deves descompactar o ficheiro e abrir a
BD sem mexer na estrutura das pastas nem mover a
BD para outro directório)
Podes melhorar todo este processo ao criares a pasta automaticamente no momento da inserção de um novo cliente, e podes dar-lhe logo um nome, neste caso seria o
NIF, por exemplo.
Não te esqueças que também deves testar se um cliente já existe.
Estás a dar me uma ajuda preciosa , muito obrigado!
Já agora como se processa a parte de criar a pasta ao criar um cliente novo na base de dados?
Não precias agradecer.
De que serve termos o conhecimento se não o partilhar-mos?
O processo deve ser feito da seguinte forma,
1 - Testar se o cliente já existe, se existir enviar mensagem "
Cliente já existe" e permitir ao utilizador escolher entre editar o cliente existente ou inserir outro. Pode ser testado quando introduzes o
NIF. Eu falo no
NIF porque é um dado único para cada cliente. Pelo menos espera-se que sim.
2 - O processo de criar a pasta pode estar embebido no teste do cliente, se não existir cria a pasta (este processo é transparente aos olhos do utilizador)
Amanhã coloco aqui um exemplo, hoje não consigo fazer isso.
Realmente faz todo o sentido, visto que o NIF é um número único irei fazer uns testes e experimentar outras funcionalidades e melhorar o layout , agradeço se puderes colocar amanhã esse exemplo.
PS: Agradeço na mesma porque realmente ajuda imenso, e é sempre bom aprender cada vez mais, mas também há pessoas que remetem-se ao silencio ao invés de transmitir o conhecimento.
Thanks alot
Com uma semana de atraso mas cá está o exemplo que te falei.
Neste exemplo tens o seguinte conteúdo,
- Verificação se o registo já existe, caso exista tens a possibilidade de editar;
- Possibilidade de anexar ficheiros aos registos, os ficheiros são copiados para uma pasta cujo nome é o NIF do cliente. São ainda listados numa
listview e caso cliques sobre o nome do ficherio este é aberto;
- Possibilidade de remover ficheiros anexados a um determinado registo;
- Possibilidade de pesquisar por NIF de cliente, se for encontrado algum registo podes aceder aos detalhes clicando sobre a pesquisa;
- Possibilidade de exportar o resultado da pesquisa para Excel;
- A interface do
Access foi "limpa" e criada um
ribbon especifica para este exemplo;
- Na abertura do ficheiro se reparares existe um
splash screen que subsitui o normal do
Access.
Alguma dúvida apita.
Há uns tempos atrás eu criei uma BD com muitas destas funcionalidades e, existem com certeza, muitas outras formas de fazer o que eu aqui escrevi. Os meus códigos são meros exemplos e de certeza que podem ser melhorados. São resultado de várias pesquisas, estudo e muitas perguntas.
Já agora para perceberes o que eu digo, eu comecei
assim.
Download Exemplo v1
EDIT:
Para abrires a BD em modo de estrutura mantem a tecla
shift pressionada na abertura da mesma.