IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Accès aux fichiers en VBA Access [AC-2013]


Sujet :

Access

  1. #1
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 125
    Points : 495
    Points
    495
    Par défaut Accès aux fichiers en VBA Access
    Salut membres du forum !
    J'aimerais savoir pourquoi les messages d'erreur suivante surviennent
    alors que j'ai suivi à la lettre les explications de comment et où placer
    les différents codes:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    Private Sub fermer_Click()
    DoCmd.Close acForm, "acces_fichiers"
    End Sub
     
     
     
    Private Sub liste_fichiers_Click()
    Dim nom_fichier As String: Dim taille As String: Dim extension As String
    Dim date_creation As String: Dim date_modification As String
    Dim objet_fichier
    Dim contenu_fichier As String
    Dim taille_lecture As Integer, NLibre As Integer
    nom_fichier = chemin.Value & " & liste_fichiers.Value"
    Set objet_fichier = CreateObject("scripting.filesystemobject")
    extension = objet_fichier.GetExtensionName(nom_fichier)
    taille = objet_fichier.GetFile(nom_fichier).Size
    date_creation = objet_fichier.GetFile(nom_fichier).DateCreated
    date_modification = objet_fichier.GetFile(nom_fichier).DateLastModified
    detail.Value = "Créé le : ' & date_creation & ', modifié le : ' & date_modification & Chr(13) & Chr(10) & 'Taille : ' & taille & ' Octets'"
    Select Case UCase(extension)
    Case "'JPG', 'GIF', 'PNG', 'JPEG', 'BMP'"
    contenu.Visible = False
    img.Visible = True
    img.Picture = nom_fichier
     
    Case "'TXT', 'CSV'"
    contenu.Visible = True
    img.Visible = False
    NLibre = FreeFile
     
    Open nom_fichier For Input As NLibre
    taille_lecture = LOF(NLibre)
    contenu_fichier = Input(taille_lecture, NLibre)
    Close NLibre
     
    contenu.Value = contenu_fichier
     
    Case Else
    contenu.Visible = True
    img.Visible = False
    contenu.Value = "'Contenu non disponible !' & Chr(13) & Chr(10) & Chr(13) & Chr(10) & 'Cliquez sur le bouton Ouvrir pour l'exécuter dans son application'"
    End Select
     
    End Sub
     
    Private Sub ouvrir_Click()
    Dim nom_fichier As String: Dim MonApplication As Object
     
    nom_fichier = chemin.Value & " & liste_fichiers.Value"
    Set MonApplication = CreateObject("'Shell.Application'")
    MonApplication.Open (nom_fichier)
    End Sub
     
    Private Sub parcourir_Click()
    Dim boite_dialogue As Office.FileDialog
    Dim nom_dossier As String: Dim fichier As Object
    Dim dossier, chaque_fichier
    Set boite_dialogue = Application.FileDialog(msoFileDialogFolderPicker)
    boite_dialogue.Title = "Sélec..onner un dossier pour récupérer son contenu"
    If boite_dialogue.Show = -1 Then
    nom_dossier = boite_dialogue.SelectedItems(1)
    chemin.Value = nom_dossier
    Set fichier = CreateObject("scripting.filesystemobject")
    Set dossier = fichier.GetFolder(nom_dossier)
    End If
    For Each chaque_fichier In dossier.Files
    liste_fichiers.AddItem chaque_fichier.Name
    Next chaque_fichier
    End Sub
    Nom : CaptureBD_AccesAuxFichiers.PNG
Affichages : 512
Taille : 22,2 Ko
    Nom : CaptureBD_AccesAuxFichiers2.PNG
Affichages : 633
Taille : 66,0 Ko
    Cordialement.
    Fichiers attachés Fichiers attachés

  2. #2
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 760
    Points : 14 795
    Points
    14 795
    Par défaut
    bonsoir,
    J'aimerais savoir pourquoi les messages d'erreur suivante surviennent
    alors que j'ai suivi à la lettre les explications de comment et où placer
    les différents codes:
    probablement à cause d'une étourderie :
    ton code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nom_fichier = chemin.Value & " & liste_fichiers.Value"
    code corrigé:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    nom_fichier = chemin.Value & "\" & liste_fichiers.Value

  3. #3
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 125
    Points : 495
    Points
    495
    Par défaut
    Salut tee_grandbois!
    Après correction, voici encore la capture d'erreur après Click sur la cmd ouvrir:
    Nom : CaptureComposantActiveX.PNG
Affichages : 464
Taille : 35,3 Ko
    Nom : CaptureBD_AccesAuxFichiers2.PNG
Affichages : 470
Taille : 66,0 Ko

    Cordialement!

  4. #4
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 760
    Points : 14 795
    Points
    14 795
    Par défaut
    bonjour,
    Après correction, voici encore la capture d'erreur après Click sur la cmd ouvrir:
    et pourtant, sur la capture écran, on voit que le code n'est pas corrigé ...

  5. #5
    Membre confirmé Avatar de morobaboumar
    Homme Profil pro
    Enseignant
    Inscrit en
    Septembre 2009
    Messages
    1 125
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 125
    Points : 495
    Points
    495
    Par défaut Remerciement
    Salut membres du forum !
    Effectivement j'ai corrigé la ligne de code comme vous me l'avez signalé.
    Ensuite remplacé l'accent (') par les griffes (").
    Tout marche.
    Voici le corrigé:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    Private Sub fermer_Click()
    DoCmd.Close acForm, "acces_fichiers"
    End Sub
     
    Private Sub liste_fichiers_Click()
    Dim nom_fichier As String: Dim taille As String: Dim extension As String
    Dim date_creation As String: Dim date_modification As String
    Dim objet_fichier
    Dim contenu_fichier As String
    Dim taille_lecture As Integer, NLibre As Integer
    nom_fichier = chemin.Value & "\" & liste_fichiers.Value
    Set objet_fichier = CreateObject("scripting.filesystemobject")
    extension = objet_fichier.GetExtensionName(nom_fichier)
    taille = objet_fichier.GetFile(nom_fichier).Size
    date_creation = objet_fichier.GetFile(nom_fichier).DateCreated
    date_modification = objet_fichier.GetFile(nom_fichier).DateLastModified
    detail.Value = "Créé le : " & date_creation & ", modifié le : " & date_modification & Chr(13) & Chr(10) & "Taille : " & taille & " Octets"
    Select Case UCase(extension)
    Case "JPG", "GIF", "PNG", "JPEG", "BMP"
    contenu.Visible = False
    img.Visible = True
    img.Picture = nom_fichier
     
    Case "TXT", "CSV"
    contenu.Visible = True
    img.Visible = False
    NLibre = FreeFile
     
    Open nom_fichier For Input As NLibre
    taille_lecture = LOF(NLibre)
    contenu_fichier = Input(taille_lecture, NLibre)
    Close NLibre
     
    contenu.Value = contenu_fichier
     
    Case Else
    contenu.Visible = True
    img.Visible = False
    contenu.Value = "Contenu non disponible !" & Chr(13) & Chr(10) & Chr(13) & Chr(10) & "Cliquez sur le bouton Ouvrir pour l'exécuter dans son application"
    End Select
     
    End Sub
     
    Private Sub ouvrir_Click()
    Dim nom_fichier As String: Dim MonApplication As Object
     
    nom_fichier = chemin.Value & "\" & liste_fichiers.Value
    Set MonApplication = CreateObject("Shell.Application")
    MonApplication.Open (nom_fichier)
    End Sub
     
    Private Sub parcourir_Click()
    Dim boite_dialogue As Office.FileDialog
    Dim nom_dossier As String: Dim fichier As Object
    Dim dossier, chaque_fichier
    Set boite_dialogue = Application.FileDialog(msoFileDialogFolderPicker)
    boite_dialogue.Title = "Sélec..onner un dossier pour récupérer son contenu"
    If boite_dialogue.Show = -1 Then
    nom_dossier = boite_dialogue.SelectedItems(1)
    chemin.Value = nom_dossier
    Set fichier = CreateObject("scripting.filesystemobject")
    Set dossier = fichier.GetFolder(nom_dossier)
    End If
    For Each chaque_fichier In dossier.Files
    liste_fichiers.AddItem chaque_fichier.Name
    Next chaque_fichier
    End Sub
    Question: peut ON ajouter d'autres extensions ici
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Select Case UCase(extension)
    Case "JPG", "GIF", "PNG", "JPEG", "BMP"
    contenu.Visible = False
    img.Visible = True
    img.Picture = nom_fichier
     
    Case "TXT", "CSV"
    contenu.Visible = True
    img.Visible = False
    NLibre = FreeFile
    ?
    Cordialement.

  6. #6
    Expert éminent sénior
    Avatar de tee_grandbois
    Homme Profil pro
    retraité
    Inscrit en
    Novembre 2004
    Messages
    8 760
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 67
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Novembre 2004
    Messages : 8 760
    Points : 14 795
    Points
    14 795
    Par défaut
    il faut essayer ... c'est le meilleur moyen d'avancer.
    Bonne continuation

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Accès aux champs en VBA Access
    Par amrod93 dans le forum VBA Access
    Réponses: 1
    Dernier message: 15/05/2012, 13h18
  2. [AC-2000] Parametrer le chemin d'acces d'un fichier en VBA Access
    Par asengs dans le forum VBA Access
    Réponses: 3
    Dernier message: 10/03/2010, 23h50
  3. Accès aux bases de données Access
    Par xela dans le forum C++Builder
    Réponses: 3
    Dernier message: 15/12/2004, 09h07
  4. [Tomcat]Droit d'accès aux fichiers créés par une servlet
    Par loulouleboss dans le forum Tomcat et TomEE
    Réponses: 7
    Dernier message: 15/07/2004, 14h32
  5. [Réseau] Autorisations d'accès aux fichiers
    Par Pedro dans le forum API, COM et SDKs
    Réponses: 7
    Dernier message: 19/05/2004, 13h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo