Macro sur colonne quand cellule fusionnées
james405
Messages postés
173
Statut
Membre
-
james405 Messages postés 173 Statut Membre -
james405 Messages postés 173 Statut Membre -
Bonjour,
Je vous explique mon problème,
J'ai une macro qui me permet de masquer les ligne dont les cellules h sont vides :
For i = 5 To 2550
If Range("H" & i) = "" Then
Rows(i).Hidden = True
End If
Next i
Jusque la tout va bien ou presque, si dans ma page, il y a des cellules fusionnées cela ne marche plus . Mon document excel est du type
TITRE 1 : La petite vache est dans le pré (ce texte est fusionner sur 6 colonnes) puis on retrouve les cellules non fusionner :
| La vache lambda | Champ A | vacciné | x |
| La vache beta | Champ B | vacciné | |
|
J'aimerais que ma macro fasse abstraction des cellules fusionnées, et qu'en plus de ca elle detecte si la vache est vacciné (grace au petit "x" auxquel cas on reprend le titre, sinon on masque tout !!!(titre + ligne), sachant que si une et une seule des vaches en dessous de mon titre est vacciné, on conservera le le titre et la ligne de la vaccinée.
Merci pour votre aide,
Jales
Je vous explique mon problème,
J'ai une macro qui me permet de masquer les ligne dont les cellules h sont vides :
For i = 5 To 2550
If Range("H" & i) = "" Then
Rows(i).Hidden = True
End If
Next i
Jusque la tout va bien ou presque, si dans ma page, il y a des cellules fusionnées cela ne marche plus . Mon document excel est du type
TITRE 1 : La petite vache est dans le pré (ce texte est fusionner sur 6 colonnes) puis on retrouve les cellules non fusionner :
| La vache lambda | Champ A | vacciné | x |
| La vache beta | Champ B | vacciné | |
|
J'aimerais que ma macro fasse abstraction des cellules fusionnées, et qu'en plus de ca elle detecte si la vache est vacciné (grace au petit "x" auxquel cas on reprend le titre, sinon on masque tout !!!(titre + ligne), sachant que si une et une seule des vaches en dessous de mon titre est vacciné, on conservera le le titre et la ligne de la vaccinée.
Merci pour votre aide,
Jales
10 réponses
-
Bonjour,
Essayer avec se complément :For i = 5 To 2550 If faux = Range("H" & i).MergeCells Then If Range("H" & i) = "" Then Rows(i).Hidden = True End If Else MsgBox Range("H" & i).MergeArea.Address End If Next i--
Salutations.
Le Pingou -
Bonjour,
Sinon le mieux est d'éviter au maximum de fussionner des cellules.
Dans ton cas tu peux sélectionner tes cellules et mettre 'format de cellule / alignement / horizontal / centrer sur plusieurs colonnes' ce qui fait exactement pareil
eric -
Bonjour PIngou et gbinforme et mercio pour vos réponses!
Eric, ce n'est pas moi qui est penser la conception du tableau, je ne peu donnc pas le modifier sur la mise en forme !!
Pingou, ta solution marche, le seul ti problème que j'ai est qu'a chasque fois que la macro rencontre une cellule fusionées, elle me demande de valider, comment enlever ces message? -
AUtant pôur moi, je n'avauis pas vu le msg box, pb reglé, il me reste encore un petit point que je ne colmprend pas, certaines ligne dont la cellule de la colonne H sont vides reste afffichée (pb pr 25 lignes qui se suivent) d'ou peut venir ce pb??
Merci pour vos réponses,
Cordialement,
James -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
Bonjour,
Pouvez-vous mettre le fichier avec au minimum la feuille concernée sur https://www.cjoint.com/ et poster le lien ? -
-
Je donne ca sans précision .... :s dsl
La macro s'appelle macro 2 (les autres ervent à rien)
Touyt le début de cette macro sont des copier coller dc inutile. Pour voir ce qui p ourrait perturber, je pense qu'il faut que tu ailles directement a la fin de la macro 2 !!!
Merci ! -
Bonjour,
Je vous propose d'essayer la procédure suivante que vous copier dans le module de votre choix :Sub MasquerLigneColHVide() Dim deli As Long, i As Long Sheets("Liste des textes").Select Application.ScreenUpdating = False For i = 5 To 2550 If 1 = Range("H" & i).MergeArea.Columns.Count Then If Range("H" & i) = "" Then Rows(i).Hidden = True End If End If Next i Application.ScreenUpdating = True End Sub -
Bonjour PIngou,
Je n'ai pas encore testée si la macro marche, mais je voulais juste te remercier (toi ainsi qu'ériic, gbinforme ...) qui prennez toujours le temps d'aider les débutants!!! Peu de gens consacrent du temps comme ça à des inconnus donc
UN GRAND MERCI A VOUS
James -
Pas de grande surprise tout marche à merveille et je gagne 2 min sur le temps de macro qui ne mets plus que 30 secondes maintenant ...
Encore merci,
James