MAC - Export Userforms = "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:

erreur macro

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 à comprendre d'ou vient l'erreur s'il vous plait ???

Bonjour

La macro s'arrête sur quelle ligne ??

Même sujet qu'ici ?? --> MAC - Comment exporter : modules, userforms, etc...

Par hasard vous n'auriez pas une feuille ou un objet masqué ?

Cordialement

Bonjour Dan,

Oui effectivement, c'est la même macro dans l'autre sujet mais qui a évoluée un peu... (Boucle "For Each" pour les Userforms)

La macro s'arrête sur:

ThisWorkbook.VBProject.VBComponents(userformVBA.Name).Export (PathToExport1b & userformVBA.Name & ".frm")
ThisWorkbook.VBProject.VBComponents(userformVBA.Name).Export (PathToExport2b & userformVBA.Name & ".frm")

Je l'ai pourtant surligné mais ça n'apparait pas sur le code...

Feuille masquée dans le classeur : oui

Objets masqués : oui

Image masquée : oui

Si je met en commentaire ces 2 lignes, le reste du code s'exécute sans problème...

Je ne comprend pas le message d'erreur...

Je ne vois pas le rapport entre le focus et les Userforms ?!?!

Re

Pas facile sans voir le fichier

Une question tu es sous excel 2016 ? Parce que si ma mémoire est bonne les USF ne fonctionnent pas dans cette version.

Cordialement

Rechercher des sujets similaires à "mac export userforms erreur focus"