Réference colonne de cellules fusionnées

Bonsoir,

Dans le fichier joint j’ai des en-têtes formatées comme dans la sélection « A2:H3 » (cellules fusionnées notamment)

Depuis la cellule « A2 » j’obtiens la cellule « C2 » en utilisant la fonction :

- Selection.End(xlToRight).Select

En faisant l’extraction de la lettre de la colonne j’obtiens la lettre « C » en utilisant la fonction :

- Split(ActiveCell.Address, "$")(1)

Or celle dont j’ai besoin c’est la lettre de la dernière colonne de la sélection soit « H » dans mon cas.

Il semble que les cellules fusionnées stoppent la fonction « Selection.End »

Existe-t-il une solution à mon problème ?

Merci d’avance pour votre aide.

Thierry

22dernier.xlsm (17.34 Ko)

Bonjour,

Tu peux utiliser

Sub dernier()
    Range("L7").Value = Split(Cells(3, Columns.Count).End(xlToLeft).Address, "$")(1)
End Sub

A+

Bonsoir Frangy,

Parfait, cela marche exactement comme je le recherchais.

Un grand merci.

Thierry

Bonsoir Frangy,

Je reviens avec mon problème car sur mon fichier j'ai dû ajouter des en-têtes, la dernière étant une colonne qui contient 2 lignes fusionnées (voir le fichier joint en V2).

Et là ça ne marche plus ! La recherche s'arrête à la 1ère colonne dont les 2 lignes ne sont pas fusionnées.

Existe une solution en modifiant la formule de résoudre mon soucis ?

Merci d"avance.

Thierry

23dernier-v2.xlsm (18.06 Ko)

Bonjour,

Tu dois comprendre 2 choses :

1) dans la plage fusionnée la valeur est placée dans la cellule supérieure ( I2 ). Tu dois donc effectuer la recherche de la dernière cellule renseignée sur la ligne 2.

2) la méthode proposée consiste à se placer sur la dernière colonne de la ligne où doit s'effectuer la recherche (XFD) puis à remonter les colonnes jusqu'à trouver la dernière cellule renseignée. Si tu places une autre valeur sur ce parcours, la recherche s'arrètera sur cette valeur, ce qui est le cas avec la valeur résultat en N2 ou le libellé "Cas 1".

Une solution consiste à effectuer le recherche en ligne 2 après avoir déplacé la valeur résultat en N3.

Sub dernier()
    'Chercher la dernière colonne - Cas 1
    Range("N3").Value = Split(Cells(2, Columns.Count).End(xlToLeft).Address, "$")(1)
    'Chercher la dernière colonne - Cas 2
    Range("N9").Value = Split(Cells(8, Columns.Count).End(xlToLeft).Address, "$")(1)
End Sub

A+

Bonsoir Frangy,

Merci pour ton aide.

Je vais prendre ta solution, comparer les 2 valeurs puis prendre la plus grande.

Bonne soirée.

Thierry

Rechercher des sujets similaires à "reference colonne fusionnees"