Bonjour tout le monde,
Je débute dans la programmation, et j'ai un projet à effectuer sur Excel en VBA.
J'ai commencé à écrire une partie de code pour donner des noms à des plages de données.
Je vous transmets le code :
C'est peut être pas la meilleur façon de travailler ou décrire mais j'essaye avec le peu de bas que j'ai et le feuilletage de divers topic.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 Sub Nomplagedonnées() 'Programme permettant de nommer les plages de données 'déclaration des variables Dim ligne As Integer Dim colonne As Integer Dim fin As Integer Dim lignetitre As Integer Dim dernierecolonne As Integer Dim derniereligne As Integer Dim Titre As String 'Initialisation des variables ligne = 6 colonne = 1 lignetitre = ligne - 1 dernierecolonne = Cells(1, Columns.Count).End(xlToLeft).Column derniereligne = Cells(Rows.Count, colonne).End(xlUp).Row Titre = Cells(lignetitre, colonne).Value With Workbooks("Projet.xlsm").Worksheets("feuil1") 'localisation de l'application du programme For colonne = 1 To dernierecolonne 'Boucle définie de la colonne n°1 à la dernière utilisée .Range(Cells(ligne, colonne), Cells(derniereligne, colonne)).Select 'Selection de la plage de données .Names.Add Name:=Titre, RefersTo:=.Range(Cells(ligne, colonne), Cells(derniereligne, colonne)) 'nomination de la plage de données en fonction du titre de la colonne Next 'Fin de la boucle définie End With 'Fin de l'utilisation de la localisation
J'ai un soucis concernant la fonction .names
Dans mon tableau j'ai un grand nombres de colonnes et j'aimerais que le titre de ma plage de données soit référencé par la première ligne de la colonne en question. Cela permettra selon moi d'avoir un fichier évolutif pour la suite de mon travail sur VBA en cas d'ajout de colonne.
J'ai une erreur d’exécution "1004" car le titre que je veux donner à ma plage est une variable, or si je mets le texte entre guillemets le code est correct. Cependant si je laisse entre guillemets mon titre sera figer.
Auriez vous une solution à me proposer ?
En vous remerciant,
Bonne soirée à vous,
Cordialement,
Partager