Bonjour le forum,
Je suis débutant depuis peu.
Sur un projet je chercher à changer automatiquement une case en fonction de celle à coté. J'ai créer une version simplifiée pour pouvoir vous le transmettre. Je m'explique :
J'ai créé une liste catégorie qui comprend la ligne 1.
Ensuite j'ai créé une liste animaux avec en son sien : Chien / Chat / Lynx / Chevreuil / Gorille
Idem pour Oiseaux / arbres etc...
Enfin à l'aide de 2 listes je demande la catégorie puis ensuite la sous catégorie. Comme le montre la capture ci dessous.
Voici ensuite mon projet :
Je souhaite que lorsque la catégorie est effacée, que la sous catégorie s'efface également (chose que j'ai réussi)
Ensuite là où je bloque, lorsque la catégorie n'a qu'un seul élément, comme Oiseaux ou Métiers, je souhaite que la sous catégorie se remplisse automatique puisqu'il n'y a qu'un choix possible.
Voici le code (très simple) que j'ai réussi a faire pour le premier point. Par contre ne je n'arrive pas a trouver comment je peux ressortir le nombre de valeur d'une liste sous vba (sur excel un nbval(indirect(....) fonctionne mais impossible de le faire sous vba)
Merci d'avance
Je suis débutant depuis peu.
Sur un projet je chercher à changer automatiquement une case en fonction de celle à coté. J'ai créer une version simplifiée pour pouvoir vous le transmettre. Je m'explique :
J'ai créé une liste catégorie qui comprend la ligne 1.
Ensuite j'ai créé une liste animaux avec en son sien : Chien / Chat / Lynx / Chevreuil / Gorille
Idem pour Oiseaux / arbres etc...
Enfin à l'aide de 2 listes je demande la catégorie puis ensuite la sous catégorie. Comme le montre la capture ci dessous.
Voici ensuite mon projet :
Je souhaite que lorsque la catégorie est effacée, que la sous catégorie s'efface également (chose que j'ai réussi)
Ensuite là où je bloque, lorsque la catégorie n'a qu'un seul élément, comme Oiseaux ou Métiers, je souhaite que la sous catégorie se remplisse automatique puisqu'il n'y a qu'un choix possible.
Voici le code (très simple) que j'ai réussi a faire pour le premier point. Par contre ne je n'arrive pas a trouver comment je peux ressortir le nombre de valeur d'une liste sous vba (sur excel un nbval(indirect(....) fonctionne mais impossible de le faire sous vba)
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 8 And Target.Row = 12 Then
If Target = "" Then
Cells(Target.Row, 9) = ""
'else if
End If
End If
End Sub
Merci d'avance