VBA

Résolu
Farfadet88 Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   -  
Farfadet88 Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Une personne m'a créé un code permettant d'aller chercher une image dans un dossier.
Ce dernier marchait sur un poste or je viens de changer de pc et la macro suivante ne marche plus:

Private Sub CommandButton2_Click()
Sheets("données").Select
Range("L1").Select
Selection.ClearComments

With Application.FileDialog(msoFileDialogFilePicker)
.AllowMultiSelect = False
.InitialFileName = CurDir
.Filters.Clear
.Filters.Add Description:="Images", Extensions:="*.jpg", Position:=1
.Title = "Choix de l'image"
If .Show = -1 Then TheFile = .SelectedItems(1) Else TheFile = 0
End With
If TheFile = 0 Then
MsgBox ("aucun fichier image choisi")
[L1] = "..."
Sheets("accueil").Select
Exit Sub
End If
Range("l1").AddComment
[L1].Comment.Shape.Fill.UserPicture TheFile
[L1] = "Photo"
Range("l1").Comment.Visible = True
Range("l1").Comment.Shape.Select True
Selection.ShapeRange.ScaleWidth 3.77, msoFalse, msoScaleFromTopLeft
Selection.ShapeRange.ScaleHeight 4.57, msoFalse, msoScaleFromTopLeft
Selection.ShapeRange.ScaleWidth 0.94, msoFalse, msoScaleFromTopLeft
Selection.ShapeRange.ScaleHeight 1.07, msoFalse, msoScaleFromTopLeft
Sheets("accueil").Select
End Sub

Le bug vient de la partie soulignée en gras: Erreur de compilation: Projet ou bibliothèque introuvable

Pouvez-vous m'aider?
--
Après Open Office essayez Opin Offece :P
Configuration: ...

5 réponses

  1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    Re-
    Sur Excel, CurDir retourne le répertoire courant. Peut être y a t'il un souci avec ce chemin.
    Tente une "approche indirecte" du style (en gras les modifs apportées à ton code) :

    Private Sub CommandButton2_Click() 
    Dim chemin as string
    chemin = "C:\Tartempion\ces_documents\blablabla\fonctionnaire"
    Sheets("données").Select 
    Range("L1").Select 
    Selection.ClearComments 
    
    With Application.FileDialog(msoFileDialogFilePicker) 
    .AllowMultiSelect = False 
    .InitialFileName = chemin 
    etc etc...
    
    0
  2. Farfadet88 Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   1 402
     
    Problème maintenant avec le terme TheFile dans ma ligne de code. Même message d'erreur

    With Application.FileDialog(msoFileDialogFilePicker)
    .AllowMultiSelect = False
    .InitialFileName = chemin
    .Filters.Clear
    .Filters.Add Description:="Images", Extensions:="*.jpg", Position:=1
    .Title = "Choix de l'image"
    If .Show = -1 Then TheFile = .SelectedItems(1) Else TheFile = 0
    End With
    0
  3. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
     
    Que signifie TheFile? Que vient il faire ici?
    A mon avis c'est une variable, variable qui n'a pas été déclarée
    Ajoute ceci en début de macro :
    Dim TheFile as String

    et retente
    0
  4. Farfadet88 Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   1 402
     
    Nickel ça marche.

    Par contre petite question qui n'a aucun rapport.

    Dans toutes mes macros auparavant, lorsque je mettais par exemple:

    [A1]= "Valeur"

    Ca marchait

    Alors que maintenant VBA me lance le débogeur et je suis obligé de mettre à la place

    Sheets ("Données").Range ("A1").Value = "Valeur"

    Cela vient du fait qu'il ne reconnaît plus la feuille concernée dans ma macro?
    0
    1. pijaku Messages postés 13513 Date d'inscription   Statut Modérateur Dernière intervention   2 773
       
      franchement... je ne sais pas. Ton explication est plausible. Je ne me suis jamais penché sur ce souci bien que je m'y sois fait prendre également.

      Tant que ça fonctionne...
      Problème résolu?
      0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Farfadet88 Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   1 402
     
    Oui, merci bien
    0