Private Sub CommandButton1_Click()
Dim pl As Range 'déclare la variable pl (PLage)
Dim vi As Variant 'déclare la variable vi (Valeur Initiale)
Dim i As Byte 'déclare la variable i (incrément)
Dim cel As Range 'déclare la variable cel (CELlule)
Dim pc As String 'déclare la variable pc (Premier Caractère)
vi = Me.ComboBox1.Value 'définit la valeur intiale
Unload Me 'vide et ferme l'Userform
'définit la palge pl
Set pl = Application.Union(Range("Q11"), Range("T11"), Range("W11"), Range("Z11"), Range("AC11"), Range("AF11"), Range("AI11"), Range("AL11"), Range("AP11"), Range("AS11"), _
Range("AV11"), Range("AY11"), Range("BB11"), Range("BE11"), Range("BH11"), Range("BK11"), Range("BO11"), Range("BR11"), Range("BU11"), Range("BX11"), Range("CA11"), _
Range("CD11"), Range("CG11"), Range("CJ11"))
pl.Value = "" 'efface les anciennes valeurs
Select Case vi 'agit en fonction de la valeur intiale
Case "Ø", "A", "AA" 'cas "Ø", "A" et "AA"
pl(1, 1).Value = IIf(vi = "Ø", "Ø", "") 'écrit dans la première cellle de la plage ("Ø", si vi = "Ø", sinon rien)
pc = IIf(vi = "AA", "A", "") 'définit le premier caractère ("A" si vi = "AA", sinon rien)
i = 1 'initialise l'incrément i
For Each cel In pl 'boucle sur toutes les cellule de la plage pl
If cel.Value <> "" Then GoTo suite1 'si la cellule n'est pas vide va à l'étiquette "suite1"
cel.Value = pc & Split(Columns(i).Address(0, 0), ":", -1)(1) 'place dans cel le premier caractère pc et l'adresse (que la colonne) de i
i = i + 1 'incrémente i
suite1: 'étiquette
Next cel 'prochaine cellule de la boucle
Case 0, 1, "A1" 'cas o, 1 et "A1"
pl(1, 1).Value = IIf(vi = "A1", "A1", "") 'écrit dans la première cellle de la plage ("A1", si vi = "A1", sinon rien)
pc = IIf(vi = "A1", "A", "") 'définit le premier caractère ("A" si vi = "A1", sinon rien)
i = Right(vi, 1) 'définit la valriable i (le derneir caractère de vi)
For Each cel In pl 'boucle sur toutes les cellule de la plage pl
If cel.Value <> "" Then GoTo suite2 'si la cellule n'est pas vide va à l'étiquette "suite2"
cel.Value = pc & i 'place dans cel le premier caractère pc et i
suite2: 'étiquette
i = i + 1 'incrémente i
Next cel 'prochaine cellule de la boucle
End Select 'fin de l'action en fonction de vi
End Sub