Insertion lien dans cellule VBA

Bonjour,

J'aurais besoin d'aide concernant mon programme. En effet, dès que j'essaye de choisir un fichier, le programme est censé inscrire le chemin de celui - ci dans la cellule associée (selon la ligne de l'enregistrement). Mais il me renvoie une erreur.

Malgré plusieurs tentatives de modifications, je n'ai pas réussi à trouver de solutions.

Vous trouverez le fichier en pièce jointe.

Merci d'avance pour vos éventuelles pistes !

Bonjour,

ci-jointe correction

1traca-v2.xlsm (43.78 Ko)

Bonjour

Réponse dans le code ci-dessous :

Private Sub btn_joindre_Click()
Dim strCheminEtFichier As Variant   '   <= 1ère erreur
'       strCheminEtFichier doit être de type Variant et non String
'       cela parce que
'           si aucun fichier n'est selectionné,
'           ou que l'utilisateur clique sur le bouton Annuler
'               du formulaire msoFIleDialogFilePicker
'       la variable doit pouvoir renvoyer un booléen
'           qui ne peut donc pas être une chaine !

With Application.FileDialog(msoFileDialogFilePicker)
        .Show   '   <= 2ème erreur
'       .show doit être dans la structure
'       With/End With et non "collée" comme c'était le cas !
        On Error Resume Next
        strCheminEtFichier = .SelectedItems.Item(1)
        On Error GoTo 0
End With

If strCheminEtFichier <> "" Then
        Sheets("Feuil1").Cells(ligne, 7) = strCheminEtFichier   '   <= 3ème erreur !
'       la variable "ligne" doit avoir obligatoirement
'       une valeur ! Ce n'est pas le cas ici !
End If

End Sub

'   Conseil !
'   --------
'   Indente et présente ton code comme il faut !
'   => il sera plus facile à lire et aussi à maintenir/corriger !

Private Sub btn_joindre_Click()
Dim strCheminEtFichier As Variant   '   <= 1ère erreur

    With Application.FileDialog(msoFileDialogFilePicker)
        .Show   '   <= 2ème erreur
        On Error Resume Next
        strCheminEtFichier = .SelectedItems.Item(1)
        On Error GoTo 0
    End With

    If strCheminEtFichier <> "" Then
        Sheets("Feuil1").Cells(ligne, 7) = strCheminEtFichier   '   <= 3ème erreur !
    End If

End Sub
Rechercher des sujets similaires à "insertion lien vba"