Variable selon cellule sélectionnée Excel Macro
Résolu
Nihilivin
Messages postés
12
Statut
Membre
-
Nihilivin Messages postés 12 Statut Membre -
Nihilivin Messages postés 12 Statut Membre -
Bonjour,
Voilà, pour le taf je voudrai faire un système de tableau à onglets, où, lorsque l'on clique sur un onglet non affiché, une macro se déclenche pour remplir le tableau de façon qui a des couettes. Le problème c'est que pour ça, je dois déclarer une variable, mais je ne sais pas où ni comment. En effet, si je la déclare dans le Private Sub, elle se redéfinit à chaque fois sans valeur, alors que je veux justement conserver sa valeur entre chaque sélection! Voici mon code pour l'instant:
Voilà voilà.... Donc en fait, là, je veux qu'à chaque sélection d'une nouvelle case, CStr(onglet) me retourne la valeur de l'onglet précédant, et non une variable vide
Merci par avance!
Voilà, pour le taf je voudrai faire un système de tableau à onglets, où, lorsque l'on clique sur un onglet non affiché, une macro se déclenche pour remplir le tableau de façon qui a des couettes. Le problème c'est que pour ça, je dois déclarer une variable, mais je ne sais pas où ni comment. En effet, si je la déclare dans le Private Sub, elle se redéfinit à chaque fois sans valeur, alors que je veux justement conserver sa valeur entre chaque sélection! Voici mon code pour l'instant:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If (Not Intersect(Target, Range("B14")) Is Nothing) And (onglet <> 0) Then
MsgBox "Global et onglet précédant " & CStr(onglet)
onglet = 0
End If
If (Not Intersect(Target, Range("B15")) Is Nothing) And (onglet <> 1) Then
MsgBox "Pôle 1 et onglet précédant " & CStr(onglet)
onglet = 1
End If
If (Not Intersect(Target, Range("B16")) Is Nothing) And (onglet <> 2) Then
MsgBox "Pôle 2 et onglet précédant " & CStr(onglet)
onglet = 2
End If
If (Not Intersect(Target, Range("B17")) Is Nothing) And (onglet <> 3) Then
MsgBox "Pôle 3 et onglet précédant " & CStr(onglet)
onglet = 3
End If
End Sub
Voilà voilà.... Donc en fait, là, je veux qu'à chaque sélection d'une nouvelle case, CStr(onglet) me retourne la valeur de l'onglet précédant, et non une variable vide
Merci par avance!
A voir également:
- Variable selon cellule sélectionnée Excel Macro
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Excel cellule couleur si condition texte - Guide
- Liste déroulante excel - Guide
- Proteger cellule excel - Guide
- Word et excel gratuit - Guide
2 réponses
Bonjour,
declaration variable Public:
Public Onglet
lorsque l'on clique sur un onglet non affiché, une macro se déclenche pour remplir le tableau de façon qui a des couettes. La par contre comprends rien du tout ?????
declaration variable Public:
Public Onglet
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If (Not Intersect(Target, Range("B14")) Is Nothing) And (Onglet <> 0) Then
MsgBox "Global et onglet précédant " & CStr(Onglet)
Onglet = 0
ElseIf (Not Intersect(Target, Range("B15")) Is Nothing) And (Onglet <> 1) Then
MsgBox "Pôle 1 et onglet précédant " & CStr(Onglet)
Onglet = 1
ElseIf (Not Intersect(Target, Range("B16")) Is Nothing) And (Onglet <> 2) Then
MsgBox "Pôle 2 et onglet précédant " & CStr(Onglet)
Onglet = 2
ElseIf (Not Intersect(Target, Range("B17")) Is Nothing) And (Onglet <> 3) Then
MsgBox "Pôle 3 et onglet précédant " & CStr(Onglet)
Onglet = 3
End If
End Sub
lorsque l'on clique sur un onglet non affiché, une macro se déclenche pour remplir le tableau de façon qui a des couettes. La par contre comprends rien du tout ?????