Problème Visual Basic pour excel

  • Initiateur de la discussion Initiateur de la discussion Manu40300
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Manu40300

XLDnaute Nouveau
Bonjour à tous,
Je me lance tout juste dans la programmation avec Visual Basic pour excel. Je connaissais déjà la programmation sur calculatrice casio qui ressemble un peu et je sais ce que c'est, quand on obtient pas ce qu'on veut, on rajoute des fonctions et des fonctions pour que ça marche et notre programme fait plusieurs pages alors qu'il pourrait être écrit sur quelques lignes.
Bref, pour faire simple, le but de la manoeuvre est de masquer certaines lignes suivant la valeur d'une cellule et ce sur plusieurs cellules sachant que suivant la cellule, les lignes à masquer sont différentes. Jusque là, j'ai réussi à m'en sortir même si je pense que j'aurai pu faire plus court.
Le problème, c'est qu'une fois que j'ai changé la valeur de ma cellule,je voudrai que la macro me fasse revenir automatiquement sur ma cellule après avoir masquer les lignes. Or, en l'occurence la, il va jusqu'à la fin du programme et me retrouve donc à chaque fois sur la cellule B17.
Si quelqu'un pouvait m'aider, ça serait sympa.
Voici mon programme :
Sub Worksheet_Change(ByVal Target As Range)
If Range("B10") = "1" Then
Rows("33:34").Select
Selection.EntireRow.Hidden = True
Cells(10, 2).Activate
End If
If Range("B10") = "2" Then
Rows("33:34").Select
Selection.EntireRow.Hidden = False
Cells(10, 2).Activate
End If
If Range("B12") = "1" Then
Rows("35:35").Select
Selection.EntireRow.Hidden = True
Cells(12, 2).Activate
End If
If Range("B12") = "2" Then
Rows("35:35").Select
Selection.EntireRow.Hidden = False
Cells(12, 2).Activate
End If
If Range("B15") = "1" Then
Range("21:21,28:28,30:32").Select
Selection.EntireRow.Hidden = True
Cells(15, 2).Activate
End If
If Range("B15") = "2" Then
Range("21:21,28:28,30:32").Select
Selection.EntireRow.Hidden = False
Cells(15, 2).Activate
End If
If Range("B17") = "1" Then
Rows("27:27").Select
Selection.EntireRow.Hidden = True
Cells(17, 2).Activate
End If
If Range("B17") = "2" Then
Rows("27:27").Select
Selection.EntireRow.Hidden = False
Cells(17, 2).Activate
End If
End Sub
Merci à tous, Manu
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
250
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
79
Retour