2015-10-08 5 views
0

J'ai un problème ridicule dans Excel 2003 où je veux faire référence à une plage je me suis défini, avec des noms tels que Div1, Div2, DIV3 etc.« name » plage nommée vs nom

J'ai macro qui détermine si j'ai besoin d'utiliser Div1, Div2, Div3 etc. et puis j'ai besoin d'utiliser VLOOKUP et MATCH avec ces différentes gammes.

Cependant:

MATCH("ValueSearched", Div1, 0) fonctionne très bien, mais

MATCH("ValueSearched", "Div1", 0) échoue

Depuis Div1 est déterminée par programmation, il est uniquement stocké sous forme de chaîne et je ne peux pas l'utiliser. Je comprends que dans la programmation normale, vous ne faites jamais vraiment référence à des valeurs comme celles-ci et que vous utiliseriez une table de hachage ou similaire, mais je pensais qu'Excel aurait un meilleur travail car tout est exécuté.

Des suggestions sur la façon dont je peux référencer dynamiquement ces plages?

+2

Qu'est-ce que la chaîne ressemble pour dire 'Div1' et je suggère un changement de nom depuis plus récente Excelle,' DIV1 'est une référence de cellule valide (elle ne serait donc pas autorisée en tant que nom). – pnuts

+2

Avez-vous essayé '= MATCH (" ValueSearched ", INDIRECT (Div1), 0)' – pnuts

+1

fonctionne INDIRECT, merci. Je vais considérer de nouveaux noms! – Grant

Répondre

0

a résolu le problème.

Avez-vous essayé = MATCH ("ValueSearched", INDIRECT (Div1), 0)