Il faut beaucoup de temps pour nommer plusieurs de cellules sur votre feuille de calcul. Les noms doivent être définis manuellement un par un. Vous pouvez automatiser cette tâche avec une macro. Les cellules A1: A10 reçoivent chacune la valeur de cellule respective comme nom.
Sub PlusieursPlagesCellules() Dim plageCellule As Range Dim i As Integer Worksheets("Feuil2").Activate Range("A1").Select For i = 1 To 10 Set PlageCell = Range("A" & i) ActiveWorkbook.Names.Add _ Name:=ActiveCell.Value, _ RefersTo:=plageCellule, Visible:=True ActiveCell.Offset(1, 0).Select Next i End Sub
Commentaires
■ Dans l’exemple suivant, les valeurs de cellule sont automatiquement adoptées comme noms de cellule.
■ Comme dans le dernier exemple, une boucle est utilisée avec la seule différence que le nombre de nouveaux noms à attribuer est encore inconnu. Vous déterminez le nombre de noms à partir du nombre de lignes utilisées.
Sub PlusieursPlagesCellules() Dim i As Integer Dim i2 As Integer i2 = ActiveSheet.UsedRange.Rows.Count Range("A1").Select For i = 1 To i2 ActiveWorkbook.Names.Add Name:=ActiveCell.Value, _ RefersToR1C1:="=Feuil7!R" & i & "C1" ActiveCell.Offset(1, 0).Select Next i End Sub
Commentaires
■ À l’aide de la propriété UsedRange, qui renvoie la zone utilisée dans la feuille de calcul, vous utilisez la propriété Count pour déterminer le nombre de lignes occupées par les données et enregistrer le nombre déterminé dans la variable i2.
■ Dans une boucle For Next, les noms de cellule sont ensuite formés à partir des valeurs de cellule jusqu’à ce que la condition de fin soit atteinte.