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 :

msgBox - Userform avec instruction [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Février 2016
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Février 2016
    Messages : 100
    Par défaut msgBox - Userform avec instruction
    Bonjour,

    J'ai beau chercher et je ne trouve pas la solution à mon problème. Je sais même pas par ou commencer.

    Dans les grandes lignes, j'ai code qui execute une série d'action.
    Arrive un moment ou j'ai mit un MSGBOX en place, OUI, NON, ANNULER.

    Par contre il me faudrait un 4eme bouton avec IMPRIMER
    Merde MSGBOX me propose que 3 actions. Donc j'ai crée un USERFORM personnalisé.

    Mais comment mettre mes fonctions dans cet USF voir BOUTONS
    CODE DES BOUTONS

    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
    25
    26
    Option Explicit
     
    Public Sub cmd1_Click()
         xlWba.Close Savechanges:=True
         xlWb.Activate
         Cells(x + 2, 16) = Ligneinsertion
         Unload USF1
    End Sub
     
    Private Sub cmd2_Click()
        Me.Hide
        Feuil1.PrintPreview
        xlWba.Close Savechanges:=True
        Unload USF1
    End Sub
     
    Private Sub cmd3_Click()
        xlWba.Close Savechanges:=False
        Unload USF1
    End Sub
     
    Private Sub cmd4_Click()
         xlWba.Close Savechanges:=False
         Exit Sub
         Unload USF1
    End Sub
    Merci pour votre aide, ou du moment une piste pour réussir

  2. #2
    Membre Expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Par défaut
    Bonjour à toi,

    Je ne comprends pas....
    Le code que tu as mis me semble correcte dans rentrer dans le détails de ce qu'il fait.

    Tu as 4 méthodes pour 4 event click de tes boutons.
    Si ce code est dans ton code USF c'est ok.

    Ou coince tu ?

  3. #3
    Membre Expert
    Avatar de Igloobel
    Homme Profil pro
    Développeur ERP - VBA et Formateur bureautique
    Inscrit en
    Septembre 2005
    Messages
    1 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur ERP - VBA et Formateur bureautique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 871
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    Bon alors pour les userforms je te conseille ces tutos là

    http://silkyroad.developpez.com/VBA/UserForm/

    http://silkyroad.developpez.com/VBA/ControlesUserForm/


    ceci dis je te conseille la lecture de ce tuto sur les MsgBox

    http://fring.developpez.com/vba/excel/msgbox/

    et comme stipulé ds le tuto, il existe des MsgBox étendu qui répond à ton problème

    http://arkham46.developpez.com/artic...sgboxplus/doc/

    tu dis
    A +

  4. #4
    Membre confirmé
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Février 2016
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Février 2016
    Messages : 100
    Par défaut
    @ Igloobel: Merci pour tous ces liens. Lu et re-lu dans tous les sens.
    Il doit me manquer la base de chez base

    @Cerede2000: Oui, ces 4 boutons sont sur mon USF.
    A chaque fois, il me dit "xlWba - variable non définie"

    Je vais essayer d'etre plus clair
    Mon code s'execute normalement - un bout du code

    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
    25
    26
    27
    28
    29
    30
    31
    32
    xlApp.Workbooks(KW).Activate
                With Sheets(druck)
                Range("A" & Ligneinsertion & "").Select
                ActiveCell.PasteSpecial xlPasteAllExceptBorders
                ActiveCell.PasteSpecial xlPasteValues
            End With
     
        End With
       '--------------------------------------------
       'Affichage de l'USF
       '--------------------------------------------
     
       USF1.Show
     
        'Select Case MsgBox("Änderung Speichern !!!", vbYesNoCancel + vbQuestion, "Was tun")
     
         '    Case vbYes
             'ActiveSheet.PageSetup.PrintArea = "A1:N" & Ligneinsertion & ""
          '   xlWba.Close Savechanges:=True
           '  xlWb.Activate
            ' Cells(x + 2, 16) = Ligneinsertion
     
            ' Case vbNo
            ' xlWba.Close Savechanges:=False
     
            ' Case vbCancel
            ' xlWba.Close Savechanges:=False
            ' Exit Sub
     
       ' End Select
     
         Set xlWba = Nothing
    Dans l'ancien cas "là ou il y a les ' msgbox " j'étais limité à trois boutons
    Donc il me faut 4 boutons, d'ou USF

    Dans ce cas, il appel USF1

    Qui est : Sur les boutons

    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
    25
    26
    Option Explicit
     
    Public Sub cmd1_Click()
         xlWba.Close Savechanges:=True
         xlWb.Activate
         Cells(x + 2, 16) = Ligneinsertion
         Unload USF1
    End Sub
     
    Private Sub cmd2_Click()
        Me.Hide
        Feuil1.PrintPreview
        xlWba.Close Savechanges:=True
        Unload USF1
    End Sub
     
    Private Sub cmd3_Click()
        xlWba.Close Savechanges:=False
        Unload USF1
    End Sub
     
    Private Sub cmd4_Click()
         xlWba.Close Savechanges:=False
         Exit Sub
         Unload USF1
    End Sub
    Après une de ces 4 solutions, j'aimerai continuer ma boucle dans le code initial.

    Mais là ca coince

    En gros, mon USF est un msgbox de 4 boutons

  5. #5
    Membre chevronné
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2011
    Messages : 181
    Par défaut
    Bonsoir à tous,

    Le problème de la variable xlWba est que sa portée est mal définie, sa déclaration devrait se situer en variable Public dans un Module tout en haut de ce dernier.
    ensuite, dans le code de la procédure Cmd4, pourquoi coder une ligne "Exit Sub" avant le "Unload" alors qu'après il n'y a plus rien ?

  6. #6
    Membre confirmé
    Homme Profil pro
    Chargé d'affaire
    Inscrit en
    Février 2016
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Chargé d'affaire

    Informations forums :
    Inscription : Février 2016
    Messages : 100
    Par défaut
    Merci pour la réponse, mais je sais pas comment definir xlWba autrement.
    xlWba est dans un module =Excel Workbook A

    En gros un module qui contient une boucle for / next
    et l'appel de USF est dans la boucle.

    Avec msgbox ca fonctionnait impec. Mais que trois boutons.

    Je sèche complètement

    Comment déclarer mon USF, ou mettre et comment mettre la procédure à suivre en cliquant sur :
    Enregistrer, imprimer et enregistrer, ne pas enregistrer et annulé (Exit sub)
    Les quatres boutons

  7. #7
    Membre Expert
    Avatar de Igloobel
    Homme Profil pro
    Développeur ERP - VBA et Formateur bureautique
    Inscrit en
    Septembre 2005
    Messages
    1 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Développeur ERP - VBA et Formateur bureautique
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 871
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par boldair67 Voir le message
    ...
    Avec msgbox ca fonctionnait impec. Mais que trois boutons.

    Je sèche complètement
    ...
    C'est pourquoi je t'ai mis le lien concernant les : MsgBoxEx où on peut mettre 4 boutons

    tu dis

    A+

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

Discussions similaires

  1. [VBA-E] UserForm avec textbox "Dynamique"
    Par Alex_Kidd dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 19/05/2006, 00h29
  2. [VBA-A]Problème avec instruction SendKeys
    Par m_haj dans le forum VBA Access
    Réponses: 4
    Dernier message: 27/04/2006, 13h00
  3. Problème de requête SQL avec instruction TRANSFORM
    Par Nosper dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 21/06/2005, 16h15
  4. problème avec instruction "RemoveItem"
    Par audrey_desgres dans le forum Access
    Réponses: 4
    Dernier message: 15/06/2005, 09h26
  5. [CR10][Delphi] PB avec Instruction PrintReport
    Par coucoucmoi dans le forum SDK
    Réponses: 6
    Dernier message: 09/03/2005, 09h30

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