Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

HELP Erreur execution macro dans plusieurs classeurs

pledger

XLDnaute Junior
Bonjours ,

Je vous contact un peut en catastrophe car j'ai une macro que je souhaite exécuter dans plusieurs fichiers ( 73) mais elle me donne une erreur.

Je doit absolument terminer pour demain matin mon travail mais 73 fichiers c'est trop long à la main.

voici la macro :
J'ai l'erreur suivante : l'indice n’appartiens pas à la sélection alors que j'ai biens toutes mes feuilles.

Avez vous une idée d'où pourrait venir le problème ?

Merci d'avance =)
 

JNP

XLDnaute Barbatruc
Re : HELP Erreur execution macro dans plusieurs classeurs

Bonjour Pledger ,
Bête question : tes 73 fichiers sont ouverts ? Workbooks représente les classeurs ouverts ...
Autre bête question : tu traites le fichier depuis lequel tu lances la macro comme les autres, car je n'ai pas vu d'exclusion de fichier ...
Et sur quelle ligne ça bug ?
A te lire
 

pledger

XLDnaute Junior
Re : HELP Erreur execution macro dans plusieurs classeurs

Bonjour JNP,

Oui les 73 fichiers sont ouverts , et oui je traite le fichier depuis lequel je lance la macro et pour finir Excel ne me montre pas la ligne où cela beugue .

En revanche à la base j'vais fait cette macro :

Code:
Public premier As Boolean

Sub Macro12()
'
' Macro12 Macro
'
' Touche de raccourci du clavier: Ctrl+n

    Dim wb As Workbook
    
    For Each wb In Workbooks
    
        If wb.Name Like "Analyse*" Then
        
            wb.Sheets("Feuil1").Select
            wb.Sheets("Feuil1").Move Before:=Sheets(1)
            wb.Sheets("Concaténation").Select
        
            Columns("A:A").Select
            Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
            Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
        
            wb.Sheets("Feuil1").Select
            wb.Sheets("Feuil1").Move Before:=Sheets("Concaténation")
            
        End If
    
        If premier = False Then
            monID = 0
        End If
            j = 1
            k = 1
            
            derniereLigne = wb.Sheets("Feuil1").Range("B65536").End(xlUp).Row
                
        For i = 1 To derniereLigne
            If wb.Sheets(1).Cells(i, 1).Value <> "" Then
                monID = monID + 1
                valeur = Sheets("Feuil1").Cells(i, 1).Value
                wb.Sheets("Concaténation").Cells(j, 1).Value = monID
                wb.Sheets("Concaténation").Cells(j, 2).Value = Sheets("Feuil1").Cells(i, 1).Value
                j = j + 1
            End If
            
            wb.Sheets("Feuil2").Cells(k, 1).Value = monID
            wb.Sheets("Feuil2").Cells(k, 2).Value = Sheets("Feuil1").Cells(i, 2).Value
            k = k + 1
        Next
        
        wb.Sheets("Concaténation").Name = "Danger"
        wb.Sheets("Feuil2").Name = "Mesure"
      
       
    Next wb

End Sub

Elle plante a la ligne
wb.Sheets("Concaténation").Name = "Danger"
mais n'execute pas le reste.

J'ai donc abandonné la première partie que je ferai à la main ( ca va être long...)

2jours que je suis dessus je commence a me dire que je n'y arriverais pas :/
 

JNP

XLDnaute Barbatruc
Re : HELP Erreur execution macro dans plusieurs classeurs

Re ,
A tester :
Mettre un
Code:
On Error Resume Next
en début de macro et
Code:
On Error GoTo 0
en fin de macro. Ça désactivera la gestion des erreurs. Il suffira de vérifier quels sont les fichiers non traités à la fin...
Un conseil, faire une copie des 73 fichiers avant de lancer ce type de macro ...
Bon courage
 

Discussions similaires

Réponses
0
Affichages
176
Réponses
1
Affichages
196
Réponses
11
Affichages
347
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…