J'ai un tableau à deux colonnes, les lignes sont remplies grâce à des formules d'une autre feuille de calcul. Dans la colonne B, les cellules sont remplies si la formule le demande.
Je souhaite créer une macro pour masquer les lignes pour lesquelles la colonne B est vide et je n'y arrive pas.
On m'a conseillé de faire une macro par enregistrement en filtrant sur les colonnes non vides, or, comme il y a des formules, il n'y a pas de colonne vide pour excel............
Par ailleurs, c'est dans un range de données de B10 à C94.
Merci beaucoup par avance pour votre aide !!!
Véronique
A voir également:
Macro excel : masquer des lignes quand la formule de l'une des deux colonnes est
Bonjour,
Tu développes sous VBA et non sous VB6 (la présente section). Fais-y attention la prochaine fois, s'il te plait.
Je souhaite créer une macro pour masquer les lignes pour lesquelles la colonne B est vide et je n'y arrive pas.
Il est important que tu définisses avec précision ce que tu entends par "vide".
Ce sera simple (quel que soit le cas défini par ta réponse) dès lors que tu auras répondu sur ce point.
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
En fait, la cellule n'est pas vide car elle contient une formule. Si la formule est validée (un score supérieur à un certain seuil), du texte est "rapatrié" dans la cellule. Sinon, la cellule est "blanche" mais contient la formule...
tu peux alors faire ainsi ===>>
exemple pour la plage B1:B10
Private Sub CommandButton1_Click()
Dim plage As Range
For i = 1 To 10
If Range("B" & i) = "" Then
If plage Is Nothing Then
Set plage = Range("B" & i)
Else
Set plage = Union(plage, Range("B" & i))
End If
End If
Next
If Not plage Is Nothing Then
plage.EntireRow.Hidden = True
End If
Set plage = Nothing
End Sub
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Ca, alors !
Je m'inquiète pour toi, là
Dans mon exemple, j'ai mis des instructions dans un bouton de commande.
Toi, tu mets ces instructions où tu le souhaites, y compris dans une macro.
Mais tu auras sans doute intérêt à modifier partout Range("B" & i) par l'ajout du nom de la feuille ! par exemple :
Worksheets("mafeuille_toto").Range("B" & i)
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient