Lorenzomike
XLDnaute Nouveau
Bonjour,
Je cherche à nommer des plages de cellule variable tant en nombre de lignes qu'en nombre de colonnes.
En cherchant sur le forum, j'ai trouvé ceci :
Sub Bricoplop()
Dim Cell As Range
Dim Pass As String
Pass = Range("B1")
For Each Cell In Range(Range("B65536").End(xlUp), Range("B1"))
If Cell = Pass Then
Range(Cell, Cell.Offset(1, 1)).Name = Cell.Offset(0, -1)
End If
Next Cell
Pass = Range("F1")
For Each Cell In Range(Range("F65536").End(xlUp), Range("F1"))
If Cell = Pass Then
Range(Cell, Cell.Offset(1, 1)).Name = Cell.Offset(0, -1)
End If
Next Cell
Pass = Range("K1")
For Each Cell In Range(Range("K65536").End(xlUp), Range("K1"))
If Cell = Pass Then
Range(Cell, Cell.Offset(1, 1)).Name = Cell.Offset(0, -1)
End If
Next Cell
Pass = Range("O1")
For Each Cell In Range(Range("O65536").End(xlUp), Range("O1"))
If Cell = Pass Then
Range(Cell, Cell.Offset(1, 1)).Name = Cell.Offset(0, -1)
End If
Next Cell
Pass = Range("S1")
For Each Cell In Range(Range("s65536").End(xlUp), Range("S1"))
If Cell = Pass Then
Range(Cell, Cell.Offset(1, 3)).Name = Cell.Offset(0, -1)
End If
Next Cell
End Sub
Sauf que ça ne s'applique pas précisement dans mon cas.
Dans le fichier joint, je cherche à nommer la plage C2:G9 avec le nom de la cellule A2
Puis le nom de la cellule A11 pour la plage C11:G14
Ainsi de suite
Sachant que je peux avoir plus de colonnes dans certains cas et que les lignes sont variables aussi.
Si c'est possible, peut-on le faire pour plusieurs feuilles en même temps?
Merci de votre aide
Je cherche à nommer des plages de cellule variable tant en nombre de lignes qu'en nombre de colonnes.
En cherchant sur le forum, j'ai trouvé ceci :
Sub Bricoplop()
Dim Cell As Range
Dim Pass As String
Pass = Range("B1")
For Each Cell In Range(Range("B65536").End(xlUp), Range("B1"))
If Cell = Pass Then
Range(Cell, Cell.Offset(1, 1)).Name = Cell.Offset(0, -1)
End If
Next Cell
Pass = Range("F1")
For Each Cell In Range(Range("F65536").End(xlUp), Range("F1"))
If Cell = Pass Then
Range(Cell, Cell.Offset(1, 1)).Name = Cell.Offset(0, -1)
End If
Next Cell
Pass = Range("K1")
For Each Cell In Range(Range("K65536").End(xlUp), Range("K1"))
If Cell = Pass Then
Range(Cell, Cell.Offset(1, 1)).Name = Cell.Offset(0, -1)
End If
Next Cell
Pass = Range("O1")
For Each Cell In Range(Range("O65536").End(xlUp), Range("O1"))
If Cell = Pass Then
Range(Cell, Cell.Offset(1, 1)).Name = Cell.Offset(0, -1)
End If
Next Cell
Pass = Range("S1")
For Each Cell In Range(Range("s65536").End(xlUp), Range("S1"))
If Cell = Pass Then
Range(Cell, Cell.Offset(1, 3)).Name = Cell.Offset(0, -1)
End If
Next Cell
End Sub
Sauf que ça ne s'applique pas précisement dans mon cas.
Dans le fichier joint, je cherche à nommer la plage C2:G9 avec le nom de la cellule A2
Puis le nom de la cellule A11 pour la plage C11:G14
Ainsi de suite
Sachant que je peux avoir plus de colonnes dans certains cas et que les lignes sont variables aussi.
Si c'est possible, peut-on le faire pour plusieurs feuilles en même temps?
Merci de votre aide