IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Suppression des userforms


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    58
    Détails du profil
    Informations personnelles :
    Âge : 66

    Informations forums :
    Inscription : Juin 2007
    Messages : 58
    Par défaut Suppression des userforms
    Bonjour;

    J’ai réalisé une macro avec des userforms. Elle crée un fichier et le sauvegarde sous un autre nom pour le classer et réaliser d’autre manipulation.
    Le pb est que je sauvegarde le fichier avec les macros et userform, j’ai trouver pour supprimer les macros mais pas les userfomr.
    Si quelqu’un pouvais m’aider.
    D’avance merci

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Regarde ici
    Les userforms sont des modules dont l'index est seulement différents des autres modules

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    58
    Détails du profil
    Informations personnelles :
    Âge : 66

    Informations forums :
    Inscription : Juin 2007
    Messages : 58
    Par défaut re
    Merci pour ta réponse, mais voila ce que j'ai essayé et qui ne marche pas

    j’ai mis ce code que vous aviez mis sur le forum, et il ne veut pas fonctionner
    Voici les 2 remarques que j’ai
    CL2.VBProject.VBComponents =< l’accès au programme visual basic n’est …
    La méthode ‘VBProject’ de l’objet ‘_Workbook’ à échoué
    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
    20
    21
    22
    23
    24
     
    Sub ListerLesModulesAeffacer()
    Dim CL1 As Workbook
    Dim CL2 As Workbook
    Dim VBComp
        Set CL1 = ThisWorkbook 'Le fichier contenant ces macros
        Set CL2 = Workbooks("FichierDontLesModulesDoiventEtreEffacés.xls")
        Set VBComp = CL2.VBProject.VBComponents
        With VBComp
            For Each VBComp In CL2.VBProject.VBComponents
                If VBComp.Type = 1 or VBComp.Type = 3 Then _
                   SupprimerLeModule CL2, VBComp.Name
            Next VBComp
        End With
        Set CL2 = Nothing
        Set VBComp = Nothing
        CL1.close false 'Fermeture sans enregistrer du fichier contenant ces macros
    End Sub
     
    Sub SupprimerLeModule(CL2, NomModule)
        With CL2.VBProject
            .VBComponents.Remove .VBComponents(NomModule)
        End With
    End Sub
    J’ai essayé aussi celui-ci, mais il bloc sur VBcomponents
    Voila le blocage (type défini par l’utilisateur non défini)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub supprimerToususerform()
    'Supprimer tous les modules vides
        Dim VBComp As VBComponents
        Dim i As Integer, j As Integer
     
        For Each VBComp In ActiveWorkbook.VBProject.VBComponents
            If VBComp.Type = 3 Then
                i = VBComp.CodeModule.CountOfDeclarationLines + 1
                j = VBComp.CodeModule.CountOfLines
                If j < i Then ActiveWorkbook.VBProject.VBComponents.Remove VBComp
            End If
        Next
    End Sub
    Si vous pouviez me donner un coup de main

    D’avance merci

  4. #4
    Expert confirmé

    Homme Profil pro
    Inscrit en
    Août 2005
    Messages
    3 317
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 3 317
    Par défaut
    bonjour


    CL2.VBProject.VBComponents =< l’accès au programme visual basic n’est …
    La méthode ‘VBProject’ de l’objet ‘_Workbook’ à échoué
    Dans le menu Outils
    Macro
    Sécurité
    Onglet "Source fiable"
    Assure toi que les deux options sont cochées
    Clique sur le bouton OK pour valider



    J’ai essayé aussi celui-ci, mais il bloc sur VBcomponents
    Voila le blocage (type défini par l’utilisateur non défini)
    Tu as un S en trop

    remplace

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim VBComp As VBComponents
    par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Dim VBComp As VBComponent


    ps

    attention ,il ne suffit pas de fair des copier/coller de codes trouvés sur internet .....
    est ce normal que tu aies une procedure nommée supprimerToususerform et une annotation juste en dessous "supprimer tous les modules vides" ... ?

    Sub supprimerToususerform()
    'Supprimer tous les modules vides



    michel

  5. #5
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Pour que ça fonctionne, tu dois valider la référence "Microsoft Visual Basic for Applications Extensibility" dans l'éditeur VBA -> Outils -> Références
    (enfin, il semble me souvenir...)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. probleme avec la suppression des userform
    Par polo1 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 16/01/2008, 17h10
  2. Réponses: 3
    Dernier message: 31/01/2005, 23h18
  3. [Lisp] Suppression des parenthèses dans une liste
    Par bourdaillet dans le forum Lisp
    Réponses: 3
    Dernier message: 19/12/2004, 21h02
  4. [Tomcat] Suppression des espaces
    Par bluefox_du_974 dans le forum Tomcat et TomEE
    Réponses: 5
    Dernier message: 16/12/2004, 21h54
  5. Réponses: 3
    Dernier message: 12/06/2002, 21h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo