J'aimerai créer une fonction qui permette en fonction de la valeur d'une
cellule de masquer ou non un ensemble de lignes consécutives.
Est-ce possible avec une fonction ?
Si oui comment ?
Si non quelle est la meilleure façon pour obtenir le même résultat ?
--
BHY
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
anonymousA
Bonjour,
Avec une fonction c'est impossible. Avec l'utilisation d'une procédure evenementielle de feuille de type worksheet_Change , c'est possible.
A mettre dans le module de feuille
Ici, je me place dans l'hypothèse où c'est le changement de la cellule A1 qui fait déclencher le masquage des lignes 2 à 5. Ce qui suit est un exemple, il y a bien sur d'autres manières de faire par programmation.
Private Sub Worksheet_Change(ByVal Target As Range)
With Target If .Item(1).Address(0, 0) = "A1" Then Range(.Offset(1, 0), .Offset(4, 0)).EntireRow.Hidden = True End If End With
End Sub
A+
J'aimerai créer une fonction qui permette en fonction de la valeur d'une cellule de masquer ou non un ensemble de lignes consécutives. Est-ce possible avec une fonction ? Si oui comment ? Si non quelle est la meilleure façon pour obtenir le même résultat ?
Bonjour,
Avec une fonction c'est impossible. Avec l'utilisation d'une procédure
evenementielle de feuille de type worksheet_Change , c'est possible.
A mettre dans le module de feuille
Ici, je me place dans l'hypothèse où c'est le changement de la cellule
A1 qui fait déclencher le masquage des lignes 2 à 5. Ce qui suit est un
exemple, il y a bien sur d'autres manières de faire par programmation.
Private Sub Worksheet_Change(ByVal Target As Range)
With Target
If .Item(1).Address(0, 0) = "A1" Then
Range(.Offset(1, 0), .Offset(4, 0)).EntireRow.Hidden = True
End If
End With
End Sub
A+
J'aimerai créer une fonction qui permette en fonction de la valeur d'une
cellule de masquer ou non un ensemble de lignes consécutives.
Est-ce possible avec une fonction ?
Si oui comment ?
Si non quelle est la meilleure façon pour obtenir le même résultat ?
Avec une fonction c'est impossible. Avec l'utilisation d'une procédure evenementielle de feuille de type worksheet_Change , c'est possible.
A mettre dans le module de feuille
Ici, je me place dans l'hypothèse où c'est le changement de la cellule A1 qui fait déclencher le masquage des lignes 2 à 5. Ce qui suit est un exemple, il y a bien sur d'autres manières de faire par programmation.
Private Sub Worksheet_Change(ByVal Target As Range)
With Target If .Item(1).Address(0, 0) = "A1" Then Range(.Offset(1, 0), .Offset(4, 0)).EntireRow.Hidden = True End If End With
End Sub
A+
J'aimerai créer une fonction qui permette en fonction de la valeur d'une cellule de masquer ou non un ensemble de lignes consécutives. Est-ce possible avec une fonction ? Si oui comment ? Si non quelle est la meilleure façon pour obtenir le même résultat ?
BHY
Merci pour l'info, effectivement les lignes sont masquées quand A1 change. Question subsidiaire, comment je les rend à nouveau visibles ? Est-ce possible par exemple de masquer si A1=1 et rendre visible si A1=2 Merci -- BHY
Bonjour,
Avec une fonction c'est impossible. Avec l'utilisation d'une procédure evenementielle de feuille de type worksheet_Change , c'est possible.
A mettre dans le module de feuille
Ici, je me place dans l'hypothèse où c'est le changement de la cellule A1 qui fait déclencher le masquage des lignes 2 à 5. Ce qui suit est un exemple, il y a bien sur d'autres manières de faire par programmation.
Private Sub Worksheet_Change(ByVal Target As Range)
With Target If .Item(1).Address(0, 0) = "A1" Then Range(.Offset(1, 0), .Offset(4, 0)).EntireRow.Hidden = True End If End With
End Sub
A+
J'aimerai créer une fonction qui permette en fonction de la valeur d'une cellule de masquer ou non un ensemble de lignes consécutives. Est-ce possible avec une fonction ? Si oui comment ? Si non quelle est la meilleure façon pour obtenir le même résultat ?
Merci pour l'info, effectivement les lignes sont masquées quand A1 change.
Question subsidiaire, comment je les rend à nouveau visibles ?
Est-ce possible par exemple de masquer si A1=1 et rendre visible si A1=2
Merci
--
BHY
Bonjour,
Avec une fonction c'est impossible. Avec l'utilisation d'une procédure
evenementielle de feuille de type worksheet_Change , c'est possible.
A mettre dans le module de feuille
Ici, je me place dans l'hypothèse où c'est le changement de la cellule
A1 qui fait déclencher le masquage des lignes 2 à 5. Ce qui suit est un
exemple, il y a bien sur d'autres manières de faire par programmation.
Private Sub Worksheet_Change(ByVal Target As Range)
With Target
If .Item(1).Address(0, 0) = "A1" Then
Range(.Offset(1, 0), .Offset(4, 0)).EntireRow.Hidden = True
End If
End With
End Sub
A+
J'aimerai créer une fonction qui permette en fonction de la valeur d'une
cellule de masquer ou non un ensemble de lignes consécutives.
Est-ce possible avec une fonction ?
Si oui comment ?
Si non quelle est la meilleure façon pour obtenir le même résultat ?
Merci pour l'info, effectivement les lignes sont masquées quand A1 change. Question subsidiaire, comment je les rend à nouveau visibles ? Est-ce possible par exemple de masquer si A1=1 et rendre visible si A1=2 Merci -- BHY
Bonjour,
Avec une fonction c'est impossible. Avec l'utilisation d'une procédure evenementielle de feuille de type worksheet_Change , c'est possible.
A mettre dans le module de feuille
Ici, je me place dans l'hypothèse où c'est le changement de la cellule A1 qui fait déclencher le masquage des lignes 2 à 5. Ce qui suit est un exemple, il y a bien sur d'autres manières de faire par programmation.
Private Sub Worksheet_Change(ByVal Target As Range)
With Target If .Item(1).Address(0, 0) = "A1" Then Range(.Offset(1, 0), .Offset(4, 0)).EntireRow.Hidden = True End If End With
End Sub
A+
J'aimerai créer une fonction qui permette en fonction de la valeur d'une cellule de masquer ou non un ensemble de lignes consécutives. Est-ce possible avec une fonction ? Si oui comment ? Si non quelle est la meilleure façon pour obtenir le même résultat ?
anonymousA
Private Sub Worksheet_Change(ByVal Target As Range)
With Target If .Item(1).Address(0, 0) = "A1" Then If .value =1 then Range(.Offset(1, 0), .Offset(4, 0)).EntireRow.Hidden = True elseif .value=2 then Range(.Offset(1, 0), .Offset(4, 0)).EntireRow.Hidden = false end if End If End With
End Sub
A+
Merci pour l'info, effectivement les lignes sont masquées quand A1 change. Question subsidiaire, comment je les rend à nouveau visibles ? Est-ce possible par exemple de masquer si A1=1 et rendre visible si A1=2 Merci
Private Sub Worksheet_Change(ByVal Target As Range)
With Target
If .Item(1).Address(0, 0) = "A1" Then
If .value =1 then Range(.Offset(1, 0), .Offset(4,
0)).EntireRow.Hidden = True
elseif .value=2 then
Range(.Offset(1, 0), .Offset(4, 0)).EntireRow.Hidden = false
end if
End If
End With
End Sub
A+
Merci pour l'info, effectivement les lignes sont masquées quand A1 change.
Question subsidiaire, comment je les rend à nouveau visibles ?
Est-ce possible par exemple de masquer si A1=1 et rendre visible si A1=2
Merci
Private Sub Worksheet_Change(ByVal Target As Range)
With Target If .Item(1).Address(0, 0) = "A1" Then If .value =1 then Range(.Offset(1, 0), .Offset(4, 0)).EntireRow.Hidden = True elseif .value=2 then Range(.Offset(1, 0), .Offset(4, 0)).EntireRow.Hidden = false end if End If End With
End Sub
A+
Merci pour l'info, effectivement les lignes sont masquées quand A1 change. Question subsidiaire, comment je les rend à nouveau visibles ? Est-ce possible par exemple de masquer si A1=1 et rendre visible si A1=2 Merci
BHY
Merci, Super ! -- BHY
Private Sub Worksheet_Change(ByVal Target As Range)
With Target If .Item(1).Address(0, 0) = "A1" Then If .value =1 then Range(.Offset(1, 0), .Offset(4, 0)).EntireRow.Hidden = True elseif .value=2 then Range(.Offset(1, 0), .Offset(4, 0)).EntireRow.Hidden = false end if End If End With
End Sub
A+
Merci pour l'info, effectivement les lignes sont masquées quand A1 change. Question subsidiaire, comment je les rend à nouveau visibles ? Est-ce possible par exemple de masquer si A1=1 et rendre visible si A1=2 Merci
Merci, Super !
--
BHY
Private Sub Worksheet_Change(ByVal Target As Range)
With Target
If .Item(1).Address(0, 0) = "A1" Then
If .value =1 then Range(.Offset(1, 0), .Offset(4,
0)).EntireRow.Hidden = True
elseif .value=2 then
Range(.Offset(1, 0), .Offset(4, 0)).EntireRow.Hidden = false
end if
End If
End With
End Sub
A+
Merci pour l'info, effectivement les lignes sont masquées quand A1 change.
Question subsidiaire, comment je les rend à nouveau visibles ?
Est-ce possible par exemple de masquer si A1=1 et rendre visible si A1=2
Merci
Private Sub Worksheet_Change(ByVal Target As Range)
With Target If .Item(1).Address(0, 0) = "A1" Then If .value =1 then Range(.Offset(1, 0), .Offset(4, 0)).EntireRow.Hidden = True elseif .value=2 then Range(.Offset(1, 0), .Offset(4, 0)).EntireRow.Hidden = false end if End If End With
End Sub
A+
Merci pour l'info, effectivement les lignes sont masquées quand A1 change. Question subsidiaire, comment je les rend à nouveau visibles ? Est-ce possible par exemple de masquer si A1=1 et rendre visible si A1=2 Merci