Macro excel pour définition de plages de données

taisherg

XLDnaute Nouveau
Bonjour,

J'ai de nouveau besoin de vos lumières. J'ai parcouru divers forums et je n'arrive pas à trouver de réponses.

Mon objectif est de réussir à mettre en place une marco excel me permettant de nommer une multitude de plage de données.

Mon fichier de données se compose de 100 colonnes. Chaque colonne est libellée par un nom de variable en ligne 1. Je souhaiterais donc, que de la colonne A à la dernière colonne non vide, nommer chaque colonne par le nom de la variable située en ligne 1.

Exemple : Colonne A intitulé NUM_CLI, sélectionner la colonne A:A, Insertion > Nom > Définir > NUM_CLI
puis passer à la colonne B est la nommer...

J'espère avoir été suffisamment précise dans ma demande et attend impatiemment vos astuces et conseils.

Par avance merci.

Taisherg.
 

jhofman

XLDnaute Occasionnel
Re : Macro excel pour définition de plages de données

bonjour taisherg


que penses tu de ce code que j'utilise souvent :)


Code:
Sub AddName(ONGLET_name As String, miniL As Integer, miniC As Integer)
Dim L As Integer, c As Integer
'
'  Définition de la zone de "NOM" pour construire des TCD ou autres références
'  utilisables dans des formules
'
        Sheets(ONGLET_name).Select
        c = Sheets(ONGLET_name).Range("A1").End(xlToRight).Column
        L = Sheets(ONGLET_name).Range("A65536").End(xlUp).Row 'dernière ligne du tableau
        ActiveWorkbook.ActiveSheet.Range(Cells(miniL, miniC), Cells(L, c)).Select
        If L > 3 Then
        '    With Selection
        Selection.CreateNames Top:=True, Left:=False, Bottom:=False, Right:=False
        'End With
        End If
        
End Sub

si les noms de colonnes sont en A1, fait l'appel comme suit:
Call AddName("Feuil1", 1, 1)
cela ajouter un nom à tes 100 colonnes à partir de A1 et jusqu'à la dernière ligne renseignée sur la première colonne demandée dans l'appel (ici colonne A)
 
Dernière édition:

taisherg

XLDnaute Nouveau
Re : Macro excel pour définition de plages de données

TROP GENIAL, exactement se que je pouvais rechercher et quelle rapidité !!!

Néanmoins, je vais être trés "chiante", étant donnée que j'utilise ces données pour remplir des tableaux, et que pour cela j'utilise la fonction somme.si, il m'est nécessaire de nommer la colonne entière (Ex : A:A) et non juste les données.

J'ai pensé que je pouvais simplifier en faisant comme ça :

'ActiveWorkbook.ActiveSheet.Columns("A:dernière colonne non vides").select

Mais comme troujours il me manque un bout !!!

Qu'en pensez-vous ???

Encore merci, ce bout de programme va mettre de grande utilité...
 

Discussions similaires

Réponses
3
Affichages
323

Statistiques des forums

Discussions
312 545
Messages
2 089 457
Membres
104 168
dernier inscrit
alain_geremy