Bonjour !

Ayant un grand nombre de Workbooks dans lesquels je souhaiterais remplacer leur code par un plus récent, je me suis fait la macro suivante (sous Excel 2000) :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Sub Remplacer_Procedure() 
Module = "ThisWorkbook"    ' Nom du Module à Remplacer ("ThisWorkbook" ou "Module#") 
'Copier dans "Module2" le texte de remplacement 
For Each WKB In Workbooks 
  If WKB.Name <> "Automatisation.xls" Then 
    'Supprime le "Module" 
    With Workbooks(WKB.Name).VBProject.VBComponents(Module).CodeModule 
      LigneDebut = .CountOfDeclarationLines 
      LigneFin = .countOfLines 
      If LigneFin <> 0 Then .deleteLines LigneDebut, LigneFin 
    End With 
    'Remplace Ligne par Ligne "Module" par "Module2" 
    For Ligne = 1 To Workbooks("Automatisation.xls").VBProject.VBComponents("Module2").CodeModule.countOfLines 
      Texte = Workbooks("Automatisation.xls").VBProject.VBComponents("Module2").CodeModule.Lines(Ligne, 1) 
      Workbooks(WKB.Name).VBProject.VBComponents(Module).CodeModule.InsertLines Line:=Ligne, String:=Texte 
    Next 
  End If 
Next WKB 
End Sub
Le souci c'est que lors de la copie ligne par ligne vers "ThisWorkbook" la copie de la 1ère ligne de la 2ème procédure provoque un plantage... Alors que dans n'importe quel module, il n'y a pas d'erreur ! Et le problème est le même en insérant un fichier *.txt !

Si vous pouviez m'aiguiller !?
Merci...