[VBA XL] Insérer du code dans un classeur
Résolu
Bonjour,
J'ai un bout de code VBA que je dois appliquer dans la feuille "ThisWorkbook" de 352 classeurs Excel. Plutôt que de faire 352 copier/coller à la main, je cherche un moyen de le faire par VBA. J'ai trouvé quelques bouts de codes sur internet mais je n'arrive pas à les adapter à mon besoin, ne serait-ce que pour un seul classeur de test.
Actuellement j'ai ça :
Ca plante à la ligne
"La méthode 'VBProject' de l'objet '_Workbook' a échoué"
Voilà, merci d'avance si vous pouvez m'aider !
Cdlt
J'ai un bout de code VBA que je dois appliquer dans la feuille "ThisWorkbook" de 352 classeurs Excel. Plutôt que de faire 352 copier/coller à la main, je cherche un moyen de le faire par VBA. J'ai trouvé quelques bouts de codes sur internet mais je n'arrive pas à les adapter à mon besoin, ne serait-ce que pour un seul classeur de test.
Actuellement j'ai ça :
Sub MAJThisWorkbook()
Dim S As String, Wbk As Workbook
With ActiveWorkbook.VBProject.VBComponents("Module1").CodeModule
S = .Lines(1, .CountOfLines)
End With
Set Wbk = Workbooks("C:\Documents and Settings\user\Bureau\test.xls")
With Wbk.VBProject.VBComponents("ThisWorkbook").CodeModule
.AddFromString S
End With
End Sub
Ca plante à la ligne
With ActiveWorkbook.VBProject.VBComponents("Module1").CodeModule
"La méthode 'VBProject' de l'objet '_Workbook' a échoué"
Voilà, merci d'avance si vous pouvez m'aider !
Cdlt
3 réponses
-
sur office ??==>2003 :
menu outils, macro, sécurité, onglet "Source Fiable", cocher faire confiance au projet visual basic
reteste avec cette case cochée. -
Oui Office 2003 pardon.
J'ai coché maintenant ça plante un peu plus bas y'a un progrès :D
Set Wbk = Workbooks("C:\Documents and Settings\user\Bureau\test.xls")
L'indice n'appartient pas à la sélection.
Merci pour l'aide ^^ -
Effectivement avec :
Workbooks.Open ("C:\Documents and Settings\user\Bureau\test.xls") Set Wbk = Workbooks("test.xls")
Ca marche nettement mieux :D
J'espérais ne pas être obligé d'ouvrir les fichiers un par un mais bon tant pis ça ira très bien comme ça.
Merci beaucoup ! :D