Les variables dans la fonction INDEX

Résolu
Livior -  
 Livior -
Bonjour,

Dans le cadre d'un petit programme sous VBA Excel 2003 je souhaite utiliser la fonction INDEX. Lorsque j'écris :

Cells(1, 1).Value = "=INDEX([Projetxls.xls]Accueil!R5C1:R5C7,,2)"

J'obtiens en A1 la valeur souhaitée.

En revanche si je crée une variable xx=2, le programme :

dim xx as integer
xx=2
Cells(1, 1).Value = "=INDEX([Projetxls.xls]Accueil!R5C1:R5C7,,xx)"

me renvoie une erreur "NOM"

Est-ce un problème de définition de variable ?

Merci.
A voir également:

1 réponse

Ivan-hoe Messages postés 433 Date d'inscription   Statut Membre Dernière intervention   309
 
Bonjour,
quand on insère une variable dans une formule Excel, il faut la ressortir des guillemets (sinon, c'est son nom qui est pris en compte dans la formule)
Cells(1, 1).Value = "=INDEX([Projetxls.xls]Accueil!R5C1:R5C7,," & xx & ")"

Et comme c'est une formule qu'on écrit, il est préférable d'utiliser Formula plutôt que Value :
Cells(1, 1).Formula = "=INDEX([Projetxls.xls]Accueil!R5C1:R5C7,," & xx & ")"

I.
0
Livior
 
Un grand merci pour ce dépannage qui me permet de débloquer une situation sur laquelle je séchais depuis plusieurs jours.

Cordialement

Livior
0