Besoin d'aide Macro/Visualbasic/Excel

Mac371 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention   -  
herod1983 Messages postés 200 Statut Membre -
Bonjour,

J'ai récupéré cette macro d'un ancien collégue mais c'est la première fois pour moi.

Lorsque je compile j'obtiens le message suivant:
Membre de méthode ou de données introuvable

Et il me surligne le SpreadSheet8 en jaune :
VOIRPT.Show vbHide
VOIRPT.Spreadsheet8.ActiveCell.Paste
Windows("W01.xls").Activate
Range("B1:B100").Select
Selection.Copy

Je ne comprend pas car ce code doit se rapporte à une feuille qui est bien présente, enfin je dois surement etre a l'ouest..

toute aide est la bienvenue
Merci d'avance
Configuration: Windows XP
Internet Explorer 6.0

7 réponses

  1. herod1983 Messages postés 200 Statut Membre 5
     
    Salut

    En fait ce code risque de ne pas te servir car :

    VOIRPT.Show vbHide ' VOIRPT est sans doute un Userform c'est une fenêtre qu'on peut créer avec des boutons une zone de texte etc. donc le code demande l'ouverture

    VOIRPT.Spreadsheet8.ActiveCell.Paste 'ensuite il y a juste un collé de l'image spreadsheet dans la cellule active
    donc code doit être incomplet car il faut d'abord copy pour un copier coller

    Windows("W01.xls").Activate ' ensuite ouverture de la feuille W01 cellules B1 à B100
    Range("B1:B100").Select
    Selection.Copy

    Apparement tu n'as pas l'image à copier c'est pour cela qui te dit introuvable.

    0
    1. Mac371 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
       
      VOIRPT.Show vbHide ' VOIRPT est sans doute un Userform c'est une fenêtre qu'on peut créer avec des boutons une zone de texte etc. donc le code demande l'ouverture

      j'ai bien ce UserForm qui s'appelle VOIRPT


      Windows("W01.xls").Activate
      Range("I1:I100").Select
      Selection.Copy
      VOIRPT.Show vbHide
      VOIRPT.Spreadsheet8.ActiveCell.Paste

      Là je pense que le code est complet


      Au début j'ai ceci :
      If VAR1 = True Then
      ChDir "X:\bkibki\"
      Workbooks.Open Filename:= _
      "X:\bkibki\W01.xls"


      L'image à copier est en fait une colonne de ce fichier EXCEL


      J'ai en fait ceci :

      If VAR1 = True Then
      ChDir "X:\bkibki\"
      Workbooks.Open Filename:= _
      "X:\bkibki\W01.xls"
      Windows("W01.xls").Activate
      Range("I1:I100").Select
      Selection.Copy

      VOIRPT.Show vbHide
      VOIRPT.Spreadsheet8.ActiveCell.Paste

      Quand je lance le debug il me surligne le spreadsheet en jaune,
      je ne comprend pas en fait à quoi corresepond le spreadsheet, j'ai bien mon forms avec plusieurs "sheet dedans"


      En tout cas merci pour ta réponse
      0
  2. Mac371 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
     
    up ;o
    0
  3. Mac371 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
     
    Personne ? ;o
    0
  4. Mac371 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
     
    helpp:)
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. herod1983 Messages postés 200 Statut Membre 5
     
    salut

    Désolé pour le temps de réponse je n'avais plus accès au net.
    En fait ton spreadsheet est en jeune car vba ne le trouve pas normalement il doit être inséré dans le userform.
    Et cela t'aurai du le récupérer non dans le code de ton collègue mais dans son classeur car:
    Quand tu crée un userform tu insère des contrôles boutons zone de texte etc.
    Au niveau du code rien ne se crée, se n'est qu'après que quand tu fais référence au nom de ton contrôle dans ton code que vba peut te le trouver.

    0
  7. Mac371 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
     
    Voila c'est tout a fait mon problème !

    Comment dire à visual basic que ma spreadsheet8 est une certaine page de mon form ?

    Car jai bien le fichier W01.xls ?

    Désolé vraiment je ne connais pas, et je ne comprend pas ;o

    Merci pour ton aide ;)
    0
  8. herod1983 Messages postés 200 Statut Membre 5
     
    Windows("W01.xls").Activate
    Range("I1:I100").Select
    Selection.Copy
    VOIRPT.Show vbHide
    VOIRPT.Spreadsheet8.ActiveCell.Paste

    enlève le vbhide déjà pour voir si il est pas planqué
    je ne pourras pas te répondre aujourd'hui, je verrai demain pour t'améliorer ton code
    a+
    0