Appeler une colonne par son nom et non par son emplacementr

Bonjour à tous,

Je suis en train d'écrire un programme VBA.

J'aimerai que mes macros ne soient pas dépendantes de l'emplacement par exemple j'ai 4 colonnes:

NOM PRENOM EMAIL TELEPHONE NIVEAU POULE

ma macro est la suivante

If Range("E" & i) > B Then

Range("F" & i) = "1"

Else

Range("F" & i) = "2"

End If

Next

End Sub

Cependant le template de mon fichier n'est pas stable.

Je voudrais pouvoir mettre

If Range("NIVEAU" & i) > 2 Then

Range("POULE" & i) = "1"

Comment faire?

Merci pour votre aide

Bonsoir,

une proposition

Sub test()
colnom = Rows(1).Find("nom", lookat:=xlWhole, MatchCase:=False).Column
colemail = Rows(1).Find("email", lookat:=xlWhole, MatchCase:=False).Column
colprenom = Rows(1).Find("prenom", lookat:=xlWhole, MatchCase:=False).Column
coltelephone = Rows(1).Find("telephone", lookat:=xlWhole, MatchCase:=False).Column
colniveau = Rows(1).Find("niveau", lookat:=xlWhole, MatchCase:=False).Column
colpoule = Rows(1).Find("poule", lookat:=xlWhole, MatchCase:=False).Column
For i = 1 To x
If Cells(i, colniveau) > B Then
Cells(i, colpoule) = "1"
Else
Cells(i, colpoule) = "2"
End If
Next
End Sub
Rechercher des sujets similaires à "appeler colonne nom emplacementr"