Access e link a files da records

di Anonimizzato24287 il
9 risposte
Salve a tutti,

premetto che sono un neofita nel settore che ha molto da imparare, e attualmente lavorando con Access ho riscontrato un problema.
Su un record (inserito in una sottomaschera di uno a molti) , cliccando due volte sopra vorrei si aprisse il relativo file .txt che riporta lo stesso nome dell’id del record.
Il file in questione e’ situato in una directory.
In VBA se scrivo il codice qui di seguito,
Private Sub ID_DblClick(Cancel As Integer)

Dim path As String
Application.FollowHyperlink "C:\database\cartella test\UnivStorage2004\kwflows"
path = "C:\database\cartella test\UnivStorage2004\kwflows" & ID & ".txt"
'Open "C:\database\cartella test\UnivStorage2004\kwflows" & ID & ".txt"" For Input As #1

End Sub
mi fa apparire la cartella con vari files .txt ma non mi apre il file su cui ho cliccato.
Cosa ho sbagliato?
Grazie a tutti per il supporto.

9 Risposte

  • Per aprire il file devi fornire a FollowHyperlink il path completo (prima) comprensivo del nome file. Poi direi sia meglio (se non obbligatorio) indicare Me!ID. Prova così
    Private Sub ID_DblClick(Cancel As Integer)
    Dim path As String
    path = "C:\database\cartella test\UnivStorage2004\kwflows" & Me!ID & ".txt"
    Application.FollowHyperlink path
    End Sub
    
  • Grazie Osvaldo,

    Niente da fare: mi dà errore di run-time 490
    Non è possibile aprire il file specificato.
  • In Access, l'errore di run-time 490 (Can not open specified file) è dovuto a:
    - privilegi dell'utente e sicurezza con cui si effettua l'accesso al file;
    - caratteri particolari, contenuti nel path per giungere al file;
    che rendono impossibile aprire lo specifico file.
    Pertanto, a meno di errori nella costruzione del path assoluto in base alle variabili impiegate, si deve implementare una routine di gestione degli errori ove valutare la correttezza del collegamento.
    Leggi questi link:
    http://allenbrowne.com/func-GoHyperlink.htm
    http://www.accessforums.net/showthread.php?t=5330
    http://www.utteraccess.com/forum/Run-time-Error-490-Ope-t1969959.html
  • Ma "kwflows" è una cartella o un prefisso legato a ID? Nel primo caso occorre aggiungere un backslash al path così
    path = "C:\database\cartella test\UnivStorage2004\kwflows\" & Me!ID & ".txt"
  • E' una cartella nella quale risiedono I files .txt
  • Ora, pur cliccando due volte su uno dei records della sottomaschera e con Il codice qui sotto, non succede assolutamente nulla.
    Private Sub ID_DblClick(Cancel As Integer)
    
    Dim path As String
    path = "C:\database\cartella test\UnivStorage2004\kwflows" & Me!ID & ".txt"
    Application.FollowHyperlink path
    
    End Sub
  • Hai provato come ti ho suggerito nel post 31 lug 2018, 14:30 ? Devi mettere un \ dopo kwflows.
  • Scusa Osvaldo,
    ho provato ma ora cliccando sopra il record, non succede nulla.
    Confermo il tuo suggerimento era corretto ma ciononostante non accade nulla.
    Non ti ho risposto subito perche' mi si e' bloccato il computer penso per eccesso di temperatura.
    Domani torno all'attacco.
  • Grazie Osvaldo,
    ho ripreso solo oggi il problema lasciato in sospeso e per il quale mi avevi fornito I suggerimenti: funzione alla grande !!!
    Il problema che mi aveva bloccato a fine luglio oltre al caldo era evidentemente l'inesperienza; ti ringrazio per il suporto
    che mi ha risolto un bel problema e, se sarai sempre disponibile, non mancherò di contattarti ancora.
    Grazie!
Devi accedere o registrarti per scrivere nel forum
9 risposte