Problème Macro

Résolu
alex130196 Messages postés 18 Statut Membre -  
alex130196 Messages postés 18 Statut Membre -
Bonjour, j'ai créer un bouton de remise a zéro dans Virtual Basic, voici le code:

Private Sub CommandButton5_Click()

Reponse = MsgBox("Attention Vous allez effacer toute vos donnés personnel, voulez-vous continuer?", vbYesNoCancel)
    If Reponse = vbYes Then

' Macro_remise_a_zéro Macro
'

'
        Range("B4:B10,B14:B21,B25:B31,B35:B46,B50:B56,B60:B67,B71:B74,B78:B84,B88:B89,B93:B94,B98,B102:B104,B107:B112,B116:B117,B121:B123,B126,B130:B134,B137:B140,B144:B146,B149:B152,B156:B160,B164,B168:B170,B174,B178,B181:B182,B186:B189,B193:B194,B198:B199,B203:B204").Select
        Range("B208:B210,B214:B215,B219:B221,B225:B226,B229:B231,B235:B236,B240:B242,B246,B250:B251").Select
        
    Selection.ClearContents
     Else
        Exit Sub
    End If
    
End Sub


Le problème est que quand je clique sur le bouton il efface que les cellule du deuxième "Range". Si je ne les ai pas mi dans le même "Range" c'est que ceci ne marche pas car il y a trop de cellule. Avez-vous une solution pour que mon bouton supprime les deux "Range"

(J'espère que j'ai été clair :/ )
Merci

8 réponses

  1. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Salut,

    c'est normal, tu sélectionnes la première rangé de ton code puis tu passe à la deuxième rangée sans avoir traité la première. je te simplifie le code et te le retourne
    1
  2. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Re,

    Tu ajoutes à ta ligne msgbox , vbExclamation ou ,vbCritical juste avant la gestion des boutons

    Reponse = MsgBox("Attention Vous allez effacer toute vos donnés personnel, voulez-vous continuer?", vbExclamation, vbYesNoCancel)
    1
  3. alex130196 Messages postés 18 Statut Membre
     
    OKOK, j'attend merci Mike!!! :)
    0
  4. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Re,

    Ta sélectionne est longue pour être traitée sur une seule ligne de code mais essaye comme cela

    Private Sub CommandButton1_Click()
    Reponse = MsgBox("Attention Vous allez effacer toute vos donnés personnel, voulez-vous continuer?", vbYesNoCancel)
    If Reponse = vbYes Then

    ' Macro_remise_a_zéro Macro
    '
    '
    Range("B4:B10,B14:B21,B25:B31,B35:B46,B50:B56,B60:B67,B71:B74,B78:B84,B88:B89,B93:B94,B98,B102:B104,B107:B112,B116:B117,B121:B123,B126,B130:B134,B137:B140,B144:B146").ClearContents
    Range("B149:B152,B156:B160,B164,B168:B170,B174,B178,B181:B182,B186:B189,B193:B194,B198:B199,B203:B204,B208:B210,B214:B215,B219:B221,B225:B226,B229:B231,B235:B236,B240:B242,B246,B250:B251").ClearContents
    Else
    Exit Sub
    End If
    End Sub

    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. alex130196 Messages postés 18 Statut Membre
     
    Merci Mike sa marche super.
    Et pendant que tu est la, sait-tu comment (si c'est possible) je pourrait rajouter le sigle ATTENTION jaune dans la MsgBox.
    Encore Merci.
    0
  7. alex130196 Messages postés 18 Statut Membre
     
    Merci Mike, trop cool
    Mais en mettant cela, je n'ai plus le choix entre "Oui" ou "Non", sa me met directement "OK".
    0
  8. Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 147
     
    Re,

    A oui alors comme cela

    reponse = MsgBox("Attention Vous allez effacer toute vos donnés personnel, voulez-vous continuer?", vbExclamation + vbYesNoCancel)
    0
  9. alex130196 Messages postés 18 Statut Membre
     
    Ok parfait merci Mike
    0