Détecter des cellules fusionnées en VBA Excel avec MergeArea
Je suis tout à fait avoir un problème avec ce que j'ai à détecter à l'horizontale et à la verticale des cellules fusionnées à partir d'un tableau excel. J'ai pour stocker la première cellule coords, et de la longueur de la zone fusionnée. Je itérer à travers la table avec les deux pour les cycles, ligne par ligne.
Comment puis-je utiliser MergeArea propriété pour détecter les regroupées et non regroupées domaines?
Si la cellule n'est pas fusionné, il devrait probablement de retour à vide gamme, cependant, ce:
"Si currentRange n'en Est Rien, Puis"
ne fonctionne pas du tout. Des idées?
Merci beaucoup.
- Tout d'abord, pourquoi ne pas mettre à jour votre question avec le code vous avez des questions au sujet? Si une cellule n'est pas fusionné ensuite mergearea renvoie toujours une seule cellule de gamme, vous ne pouvez pas vérifier
If Not c.MergeArea Is Nothing
. Vous devez vérifier le nombre de lignes/colonnes, et que vous pouvez trouver en haut à gauche de la cellule à l'aide dec.MergeArea.Cells(1)
Vous devez vous connecter pour publier un commentaire.
Il y a plusieurs utiles bits de code pour cela.
Placez votre curseur dans un fusionné de cellules et de poser ces questions dans le Immidiate Fenêtre:
Est activecell une cellule fusionnée?
Combien de cellules sont fusionnées?
Nombre de colonnes fusionnées?
Le nombre de lignes fusionnées?
Ce qui est fusionnée avec la plage d'adresses?
Mergecells
est nouveau pour moiTout en travaillant avec des cellules sélectionnées comme indiqué par @tbur peut être utile, c'est pas la seule option disponible.
Vous pouvez utiliser Range() comme suit:
Ou:
Alternativement, vous pouvez utiliser Cellules():