Création de nom

Résolu/Fermé
ESCOUGER Messages postés 31 Date d'inscription lundi 3 décembre 2007 Statut Membre Dernière intervention 17 juillet 2019 - 7 oct. 2013 à 09:43
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 - 8 oct. 2013 à 09:31
Bonjour,
Je désire créer un nom via une macro. Ce nom sera ultérieurement utilisé dans une instruction VLOOKUP.
Mon problème: La référence qui est crée est encadrée par des guillemets, ce qui entraîne un rejet syntaxique de l'instruction. Comment faire pour éviter ces guillemets.
Voici le code que j'ai écrit:
z_table = "$D$20009:$FS$" & lig_work ' lig_work contient ici 20580
ActiveWorkbook.Names("matrice").Delete
'nouveau nom
ActiveWorkbook.Worksheets("recap").Names.Add Name:="matrice", RefersToR1C1Local _
:=z_table

Résultat: matrice = "$D$20009:$FS$20580"


zvlook1 = "=vlookup(z1,matrice,3,FALSE)"
ActiveCell.Formula = zvlook1

Cette formule est rejetée car elle est interprétée comme:
vlookup(z1,"$D$20009:$FS$20580",3,FALSE)

Si, en mode debug, après la création du nom et avant l'instruction vlookup je supprime ces guillemets çà marche.

Comment puis-je faire pour que ces guillemets ne soient pas générés?

Merci d'avance de votre aide.
Gérard
--

2 réponses

pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 743
7 oct. 2013 à 12:40
Salut,

Les guillemets se mettent automatiquement parce que tu travailles avec des variables de type String.
Or, dans ton cas, la plage de calcul d'une formule est un Range, et donc se doit d'être déclaré comme tel.
Soit :
Dim z_table As Range
Set z_table = Worksheets("Feuil1").Range("$D$2:$FS$" & lig_work) ' lig_work contient ici 20580
ActiveWorkbook.Names("matrice").Delete
'nouveau nom
ActiveWorkbook.Worksheets("recap").Names.Add Name:="matrice", RefersToR1C1Local _
:=z_table
zvlook1 = "=vlookup(z1,matrice,3,FALSE)"
ActiveCell.Formula = zvlook1
--
Cordialement,
Franck
0
ESCOUGER Messages postés 31 Date d'inscription lundi 3 décembre 2007 Statut Membre Dernière intervention 17 juillet 2019
8 oct. 2013 à 09:12
Merci beaucoup. Cela marche maintenant parfaitement.
Gérard

--
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 743
8 oct. 2013 à 09:31
De rien.
A+
0