Nommer des cellules

Résolu/Fermé
Mistral_13200 Messages postés 634 Date d'inscription mardi 5 août 2008 Statut Membre Dernière intervention 21 mars 2024 - 3 déc. 2015 à 10:55
Mistral_13200 Messages postés 634 Date d'inscription mardi 5 août 2008 Statut Membre Dernière intervention 21 mars 2024 - 3 déc. 2015 à 18:52
Bonjour à tous,

Dans un fichier j’ai la colonne « C » qui s’appelle « Nom ».
Je souhaiterais nommer toutes les cellules, utilisées, de cette colonne de la manière suivante :
Nom_1 à dernière ligne écrite.

Pouvez-vous m’aider ?
D’avance merci pour votre aide.
Cordialement.
Mistral

6 réponses

cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
3 déc. 2015 à 13:59
voilà pour une colonne. Il faudra le faire pour chaque colonne avec le nouveau nom. Il y a qu'a changer le numéro de colonne ainsi que le nom:

Sub For_X_to_Next_Ligne()
Dim FL1 As Worksheet, NoCol As Integer
Dim NoLig As Long, Var As Variant
Dim DernLigne As Long
DernLigne = Range("A65536").End(xlUp).Row
    Set FL1 = Worksheets("Feuil1")
    NoCol = 1 'lecture de la colonne 1
    For NoLig = 2 To DernLigne 'démarre à la 2ème ligne jusqu' a la dernière ligne de la colonne A
        Var = FL1.Cells(NoLig, NoCol)
         ActiveWorkbook.Names.Add Name:="Nom_" & NoLig - 1, RefersToR1C1:="=Feuil1!" & "R" & NoLig & "C" & NoCol
    Next
    Set FL1 = Nothing
End Sub

1
Mistral_13200 Messages postés 634 Date d'inscription mardi 5 août 2008 Statut Membre Dernière intervention 21 mars 2024 4
3 déc. 2015 à 11:04
Petite précision:

Je sais le faire, sans problème et manuellement en utilisant la gestion des noms depuis une sélection.
Ayant à le faire de façon répétitive je voudrais le faire par une macro mais l'enregistreur de macro me donne une répétition d'action aussi longue qu'il y a de ligne.
Je pense que cela doit être possible à l'aide d'une boucle mais je ne m'en sort pas.
Merci pour votre aide.
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
3 déc. 2015 à 11:54
Bonjour,

Voir ce site pour les boucles:

https://excel.developpez.com/actu/47690/Boucles-pour-parcourir-une-colonne-une-ligne-une-plage-de-donnees-deux-nouvelles-methodes/

ce qui donne:

Sub For_X_to_Next_Ligne()
Dim FL1 As Worksheet, NoCol As Integer
Dim NoLig As Long, Var As Variant
    Set FL1 = Worksheets("Feuil1")
    NoCol = 1 'lecture de la colonne 1
    For NoLig = 1 To 20
        Var = FL1.Cells(NoLig, NoCol)
        FL1.Cells(NoLig, NoCol).Value = "Nom_" & NoLig
    Next
    Set FL1 = Nothing
End Sub


voilà
0
eriiic Messages postés 24569 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 28 décembre 2023 7 211
3 déc. 2015 à 12:18
Bonjour,

Sans macro. Tu insères une colonne vide B et tu y saisis Nom_1 que tu tires vers le bas.
Sélectionnes B2:C50 et nommer depuis sélection 'colonne de gauche'.
eric
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
3 déc. 2015 à 12:25
Je sais le faire, sans problème et manuellement en utilisant la gestion des noms depuis une sélection.

Il veux une macro!
0
Mistral_13200 Messages postés 634 Date d'inscription mardi 5 août 2008 Statut Membre Dernière intervention 21 mars 2024 4 > cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024
3 déc. 2015 à 15:21
Merci Eric pour ta réponse mais cette manière de faire je connais et ce n'est pas le sens de ma demande mais merci quand même pour ta réponse.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Mistral_13200 Messages postés 634 Date d'inscription mardi 5 août 2008 Statut Membre Dernière intervention 21 mars 2024 4
3 déc. 2015 à 12:29
Bonjour Pivert,

Merci à toi de te pencher sur mon problème.

Ce n'est pas exactement ce que je souhaite. Avec ta proposition j'écris en dur dans la cellule "Nom_1".

Ce que je souhaite c'est nommer la cellule "Nom_1" de manière à pouvoir réutiliser, par le suite, le contenu de la cellule nommée "Nom_1".
Par la suite je réutiliserais cette macro pour nommer les 6 colonnes que je dois nommer.

1) Est-il possible de créer les noms en fonction du nombre de ligne contenu dans la feuille, moins 1, de façon à ne pas toucher à la première ligne qui est une ligne de titre de colonne.

2)Est-il possible qu'avec une seule macro nommer 6 colonnes avec 6 noms différents.
D'avance merci.
Mistral
0
Mistral_13200 Messages postés 634 Date d'inscription mardi 5 août 2008 Statut Membre Dernière intervention 21 mars 2024 4
3 déc. 2015 à 18:52
Bonsoir Pivert,

Je viens d'adapter ta macro à mes besoins sur plusieurs colonnes sans problème.
Tout fonctionne correctement.
Je vais clore ce post.

Un grand merci à toi.
Cordialement.
Mistral
0