Activation du 2ème fichier ne fonctionne pas

Bonjour à tous

Et bravo et merci à tout ceux qui prennent de leur temps pour répondre aux différentes questions.

Je suis un amateur évolué dira-t-on du VBA Excel, j'ai déjà fait pas mal de petites et grandes macro pour diverses personnes de mon entreprise mais là je cale...

Voici mon souci, je dois remplir certaines cellules d'un fichier de départ (NomSource), où se trouve donc cette macro, par des valeurs situé dans un autre fichier (Nom), vérifier s'il existe ou non et dans d'autres cellules.

je récupère mes données au départ dans le fichier NomSource -> OK

Je vérifie si le fichier Nom existe -> OK

J'ouvre ce dernier s'il existe -> OK

je cherche la valeur dont j'ai besoin, je la sélectionne puis la copie -> OK

J'active le fichier original NomSource et je colle les données à l'endroit voulu -> OK

Mais dès que je veux réactiver le 2ème fichier (Workbooks(Nom).Activate), il me met un message d'erreur "l'indice n'appartient pas à la sélection" alors qu'il a ouvert ce même fichier plus tôt...

Voici un extrait de mon code

Sub Export()

    CheminSource = ActiveWorkbook.Path

    NomSource = ActiveWorkbook.Name

    CheminDest = ActiveWorkbook.Path & "\" & "Résultat des exports\"

    dercol = Cells(8, Columns.Count).End(xlToLeft).Column

    Colsource = 2

    For Col = 2 To dercol

        NumSemaine = Cells(8, Col).Value
        Nom = CheminDest & Dir(CheminDest & "Récapitulatif Hebdomadaire de la semaine " & NumSemaine & "*.*")
        If Nom = "" Then GoTo Line1
        Workbooks.Open Nom     'Ouverture du fichier
        For ligne = 10 To 14
            Cells(ligne, 4).Select
            Selection.Copy
            Workbooks(NomSource).Activate
            Cells(ligne, Colsource).Select
            Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
                :=False, Transpose:=False
            Application.CutCopyMode = False
            Colsource = Colsource + 1
            Workbooks(Nom).Activate
            Cells(ligne, 10).Copy
            Workbooks(NomSource).Activate
            Cells(ligne, Colsource).Select
            Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
                :=False, Transpose:=False
            Application.CutCopyMode = False
            Colsource = Colsource + 1
        Next ligne

Line1:
        Col = Col + 1
    Next Col

End Sub

Si quelqu'un à le temps de se pencher sur mon souci ce serait gentil car j'ai la cafetière qui commence à bouillir

Merci

Bonjour,

la variable Nom contient le chemin et, Workbooks(Nom).Activate cherche à activer le classeur ouvert "chemin + nom classeur" qui n'existe pas.

Une solution possible :

Nom = Dir(CheminDest & "Récapitulatif Hebdomadaire de la semaine " & NumSemaine & "*.*")
...
Workbooks.Open CheminDest & Nom
...
Workbooks(Nom).Activate

A+

édit: remise de la ligne originale de recherche des fichiers, avec modification .

Merci je vais tester demain et je reviens vers vous...

Désolé j'ai pas pu attendre pour tester... :lol:

Cela fonctionne à merveille

J'y avais pas pensé, merci pour le dépannage

Rechercher des sujets similaires à "activation 2eme fichier fonctionne pas"