MAC - Export UserForm = "Erreur de focus"
Bonjour le forum,
La macro ci-dessous me permet d'exporter tous les éléments de VBProject (Feuilles, Userforms et Modules) dans 2 dossiers différents...
La macro génère une erreur:
sur la ligne surlignée...
le code:
Sub Exporter_VBAProjet()
Dim moduleVBA As Object
Dim userformVBA As Object
Dim PathToExport1a As String
Dim PathToExport1b As String
Dim PathToExport1c As String
Dim PathToExport2a As String
Dim PathToExport2b As String
Dim PathToExport2c As String
PathToExport1a = "Mac OS X El Capitan:Users:M.Pxxxxxxxx:Documents:Macros Excel 2016:for Mac:Feuilles:"
PathToExport1b = "Mac OS X El Capitan:Users:M.Pxxxxxxxx:Documents:Macros Excel 2016:for Mac:UserForms:"
PathToExport1c = "Mac OS X El Capitan:Users:M.Pxxxxxxxx:Documents:Macros Excel 2016:for Mac:Modules:"
PathToExport2a = "Mac OS X El Capitan:Users:M.Pxxxxxxxx:Dropbox:### Partage Windows & Mac ###:Macros Excel 2016:for Mac:Feuilles:"
PathToExport2b = "Mac OS X El Capitan:Users:M.Pxxxxxxxx:Dropbox:### Partage Windows & Mac ###:Macros Excel 2016:for Mac:UserForms:"
PathToExport2c = "Mac OS X El Capitan:Users:M.Pxxxxxxxx:Dropbox:### Partage Windows & Mac ###:Macros Excel 2016:for Mac:Modules:"
'Copie les feuilles dans les deux chemins...
ActiveWorkbook.VBProject.VBComponents("Feuil1").Export (PathToExport1a & "Feuil1 (Devis).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil2").Export (PathToExport1a & "Feuil2 (Facture).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil3").Export (PathToExport1a & "Feuil3 (Métrés).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil4").Export (PathToExport1a & "Feuil4 (Prix C.C.L).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil5").Export (PathToExport1a & "Feuil5 (Prix ProBat).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil6").Export (PathToExport1a & "Feuil6 (Réfs & Prix MO).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil7").Export (PathToExport1a & "Feuil7 (Situation(s)).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil8").Export (PathToExport1a & "Feuil8 (Charges R.S.I).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil9").Export (PathToExport1a & "Feuil9 (Bilan).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil10").Export (PathToExport1a & "Feuil10 (Bilan(Bis)).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil11").Export (PathToExport1a & "Feuil11 (Impôt sur le revenu).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil12").Export (PathToExport1a & "Feuil12 (Prix Point P).cls")
ActiveWorkbook.VBProject.VBComponents("ThisWorkbook").Export (PathToExport1a & "ThisWorkbook.cls")
ActiveWorkbook.VBProject.VBComponents("Feuil1").Export (PathToExport2a & "Feuil1 (Devis).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil2").Export (PathToExport2a & "Feuil2 (Facture).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil3").Export (PathToExport2a & "Feuil3 (Métrés).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil4").Export (PathToExport2a & "Feuil4 (Prix C.C.L).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil5").Export (PathToExport2a & "Feuil5 (Prix ProBat).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil6").Export (PathToExport2a & "Feuil6 (Réfs & Prix MO).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil7").Export (PathToExport2a & "Feuil7 (Situation(s)).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil8").Export (PathToExport2a & "Feuil8 (Charges R.S.I).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil9").Export (PathToExport2a & "Feuil9 (Bilan).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil10").Export (PathToExport2a & "Feuil10 (Bilan(Bis)).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil11").Export (PathToExport2a & "Feuil11 (Impôt sur le revenu).cls")
ActiveWorkbook.VBProject.VBComponents("Feuil12").Export (PathToExport2a & "Feuil12 (Prix Point P).cls")
ActiveWorkbook.VBProject.VBComponents("ThisWorkbook").Export (PathToExport2a & "ThisWorkbook.cls")
'Copie les UserForms dans les deux chemins...
For Each userformVBA In ThisWorkbook.VBProject.VBComponents
If userformVBA.Type = 3 Then '100 = Feuilles, 3 = UserForms, 1 = Modules...
[Surligner]ThisWorkbook.VBProject.VBComponents(userformVBA.Name).Export (PathToExport1b & userformVBA.Name & ".frm")[/Surligner]
[Surligner]ThisWorkbook.VBProject.VBComponents(userformVBA.Name).Export (PathToExport2b & userformVBA.Name & ".frm")[/Surligner]
End If
Next userformVBA
'Copie les modules dans les deux chemins...
For Each moduleVBA In ThisWorkbook.VBProject.VBComponents
If moduleVBA.Type = 1 Then '100 = Feuilles, 3 = UserForms, 1 = Modules...
ThisWorkbook.VBProject.VBComponents(moduleVBA.Name).Export (PathToExport1c & moduleVBA.Name & ".bas")
ThisWorkbook.VBProject.VBComponents(moduleVBA.Name).Export (PathToExport2c & moduleVBA.Name & ".bas")
End If
Next moduleVBA
End Sub
Quelqu'un pourrait-il m'aider s'il vous plait ???