Discussione:
Finestra cerca file da masche access
(troppo vecchio per rispondere)
Copy
2010-03-12 17:50:01 UTC
Permalink
Ciao a tutti,
ho una cartella (c:\rapportini) contenente svariati documenti in PDF
nominati per numero, vorrei da una maschera di access, poter effettuare una
ricerca (per nome file) e aprirlo per la visualizzazione.
per esempio, vorrei creare all'interno di una maschera esistente una casella
di testo nella quale digitare il nome file (es.1234) e premendo su un tasto
"Apri" mi venga aperto il file desiderato (c:\rapportini\1234.pdf).

La folder rimane sempre invariata, e i documenti sono salvati per numero
univoco

Ho cercato in svariati forum ma non ho ancora trovato una soluzione.

Buon week-end a tutti
Karl Donaubauer
2010-03-12 18:09:02 UTC
Permalink
Post by Copy
ho una cartella (c:\rapportini) contenente svariati documenti in PDF
nominati per numero, vorrei da una maschera di access, poter
effettuare una ricerca (per nome file) e aprirlo per la
visualizzazione.
per esempio, vorrei creare all'interno di una maschera esistente una
casella di testo nella quale digitare il nome file (es.1234) e
premendo su un tasto "Apri" mi venga aperto il file desiderato
(c:\rapportini\1234.pdf).
La folder rimane sempre invariata, e i documenti sono salvati per
numero univoco
Ho cercato in svariati forum ma non ho ancora trovato una soluzione.
Il codice su clic del pulsante sarebbe:

fHandleFile "c:\rapportini\" & Me!NomeCasellaDiTesto, WIN_NORMAL

Il codice per fHandleFile trovi qui:
http://www.mvps.org/access/api/api0018.htm
Basta copiare tutto il codice del sito in un nuovo modulo standard.
--
HTH
Karl
*********
Access FAQ: www.donkarl.com/it
Copy
2010-03-16 19:35:01 UTC
Permalink
Intanto ti ringrazio per l'interessamento, putrtroppo, probabilmente data la
mia scarsa se non nulla esperienza con access e VB non sono riuscito a
risolvere con il tuo aiuto, ma in compenso, ho risolto così:


Private Declare Function ShellExecute Lib "shell32.dll" Alias
"ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal
lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String,
ByVal nShowCmd As Long) As Long

Private Sub TastoCerca_Click()
Dim Percorso As String, file As String
file = CodiceRicerca.Value & ".pdf"
Percorso = "C:\rapportini\"
ShellExecute 0, "OPEN", file, "", Percorso, 1
End Sub


con questo codice funziona benissimo, purtroppo non mi ricordo più dove l'ho
trovato, altrimenti avrei aggiunto il link...
Il codice funziona correttamente, xò vorrei impostare un messaggio di errore
nel caso in cui venisse inserito un numero non corretto, una frase del tipo
"nessun file presente nell'archivio" in quanto mentre se inserisco un campo
valido la sub mi apre il file corretto, se inserisco un nome file non
corretto non mi segnala nessun errore

Grazie per il tempo dedicatomi

Fabrizio
ciao
prendi spunto da qui
http://www.sitocomune.com/
“6.216 Stampare da VBA un file PDF senza visualizzarlo”
ovviamente leva il "print"
(ovviamente devi avere un pdf reader associato)
maurizio
Post by Copy
Ciao a tutti,
ho una cartella (c:\rapportini) contenente svariati documenti in PDF
nominati per numero, vorrei da una maschera di access, poter effettuare una
ricerca (per nome file) e aprirlo per la visualizzazione.
per esempio, vorrei creare all'interno di una maschera esistente una casella
di testo nella quale digitare il nome file (es.1234) e premendo su un tasto
"Apri" mi venga aperto il file desiderato (c:\rapportini\1234.pdf).
La folder rimane sempre invariata, e i documenti sono salvati per numero
univoco
Ho cercato in svariati forum ma non ho ancora trovato una soluzione.
Buon week-end a tutti
Karl Donaubauer
2010-03-17 09:40:27 UTC
Permalink
Post by Copy
...
Private Declare Function ShellExecute Lib "shell32.dll" Alias
"ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String,
ByVal lpFile As String, ByVal lpParameters As String, ByVal
lpDirectory As String, ByVal nShowCmd As Long) As Long
Private Sub TastoCerca_Click()
Dim Percorso As String, file As String
file = CodiceRicerca.Value & ".pdf"
Percorso = "C:\rapportini\"
If Dir(Percorso & file)>"" Then
Post by Copy
ShellExecute 0, "OPEN", file, "", Percorso, 1
Else
MsgBox "Nessun file presente nell'archivio."
End If
Post by Copy
End Sub
...
Il codice funziona correttamente, xò vorrei impostare un messaggio
di errore nel caso in cui venisse inserito un numero non corretto,
una frase del tipo "nessun file presente nell'archivio"
...
--
HTH
Karl
*********
Access FAQ: www.donkarl.com/it
Continua a leggere su narkive:
Loading...