Affecter une macro a une valeur de cellule
miniboo
-
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à Tous,
Je suis débutante dans la programmation, et j'ai peur que mon post soit mal placé!
En fait, je cherche à affecter une macro (qui affiche une colonne) lorsque la valeur 1 est selectionnée dans une liste de choix (données-validation) 1 ou 2.
le code si dessous me le permet:
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("B4").Value = "1" Then
Run "affichercolonne"
Else: Run "cachercolonne"
End If
End Sub
Cependant, je souhaiterais affecter cette fonction non seulement à la cellule B4 mais aussi aux cellules suivantes de la même colonne (B5,B6,B7,...Bn).
Je pense que ca doit etre quelquechose du style :
Range(ActiveCell, ActiveCell.End(xlDown)).Select
Mais je n'arrive pas à trouver la bonne formule!
Si quelqu'un peut me débloquer ca serait super!!
Merci d'avance à tous!
Miniboo
Je suis débutante dans la programmation, et j'ai peur que mon post soit mal placé!
En fait, je cherche à affecter une macro (qui affiche une colonne) lorsque la valeur 1 est selectionnée dans une liste de choix (données-validation) 1 ou 2.
le code si dessous me le permet:
Private Sub Worksheet_Change(ByVal Target As Range)
If Range("B4").Value = "1" Then
Run "affichercolonne"
Else: Run "cachercolonne"
End If
End Sub
Cependant, je souhaiterais affecter cette fonction non seulement à la cellule B4 mais aussi aux cellules suivantes de la même colonne (B5,B6,B7,...Bn).
Je pense que ca doit etre quelquechose du style :
Range(ActiveCell, ActiveCell.End(xlDown)).Select
Mais je n'arrive pas à trouver la bonne formule!
Si quelqu'un peut me débloquer ca serait super!!
Merci d'avance à tous!
Miniboo
A voir également:
- Affecter une macro a une valeur de cellule
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Aller à la ligne dans une cellule excel - Guide
- Bloquer une cellule excel - Guide
- Cette valeur ne correspond pas aux restrictions de validation des données pour cette cellule ✓ - Forum Excel
- Diviser une cellule excel en deux horizontalement ✓ - Forum Excel
1 réponse
Bonsoir
essaies:
essaies:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim zone As Range
'restreint l'évènement à B4:Bn (Bn étant la dernière cellule non vide dans col B)
Set zone = Range(Cells(4, 2), Cells(Range("B65536").End(xlUp).Row, 4))
If Intersect(Target, zone) Is Nothing Then: Exit Sub
'target est la cellule active
If Target = 1 Then
affichercolonne
Else
cachercolonne
End If
Set zone = Nothing
End Sub