OVH Cloud OVH Cloud

RechercheV

1 réponse
Avatar
Jpl
J'entre mes donn=E9es (identifiants) dans un tableau par=20
l'interm=E9diaire de 2 boucles i et j. Une fois ces donn=E9es=20
collect=E9es, elles sont insrites dans la feuille ad hoc,=20
je souhaiterai qu'=E0 ce moment, apparaisse dans la colonne=20
voisine de l'identifiant le nom exacte.
Ex. Identifiant 1 pour PARIS
La formule est la suivante, pour:
Cellule active B10 (doit recevoir PARIS), donn=E9e en A10=20
(1), tableau en Q2:R6 (1 PARIS, 2 NANTE, etc...)
ActiveCell.FormulaR1C1 =3D "=3DVLOOKUP(RC[-1],R[-8]C[15]:R[-4]
C[16],2)"
Cela fonctionne tr=E8s bien pour cette ligne, mais =E0 la=20
ligne suivante, soit pour la donn=E9e en A11, cela ne=20
fonctionne plus =E9tant donn=E9 que le tableau ne bouge pas!
Il faut donc que j'arrive =E0 remplacer les valeurs [-8]par=20
des variables ! COMMENT FAIRE ?
Ex. sur base des donn=E9es ci-dessus, je d=E9termine la=20
position en ligne de la cellule active que je mets dans=20
une variable, soit
Ligne =3D ActiveCell.Row (r=E9ponse 10)
je remplace maintenant -8 par Ligne-2 (r=E9ponse 8), il=20
faut maintenant inverser le signe ? comment fait-on ?
Mais, beaucoup plus grave, d=E8s que je remplace le -8 par=20
ma variable, VB n'accepte pas, pourquoi ?
Merci, d'avoir pris la peine de lire mon probl=E8me, toutes=20
vos remarques ou reccommandations seront les bienvenues.
D'avance merci
=20

1 réponse

Avatar
JS
Essaie de donner un nom à ta table à utiliser sous Excel,
ActiveWorkbook.Names.Add Name:=
Moi je l'utilise sans problèmes dans mes macros, en
utilisant des variables pour définier la plage à nommer
Exceple :
Range(QuelleColonne & LigneEnCours +
FilialeEnCours).Select
ActiveWorkbook.Names.Add
Name:=QuelleFeuille & "!" & NomColonne & _
"Reg1Fil" & CStr(FilialeEnCours),
RefersToR1C1:="=" & QuelleFeuille & "!R" & _
CStr(LigneEnCours +
FilialeEnCours) & "C" & NoColonne

Puis utilise le nom attribué dans ta feuille excel.

C'est OK?

-----Message d'origine-----
J'entre mes données (identifiants) dans un tableau par
l'intermédiaire de 2 boucles i et j. Une fois ces données
collectées, elles sont insrites dans la feuille ad hoc,
je souhaiterai qu'à ce moment, apparaisse dans la colonne
voisine de l'identifiant le nom exacte.
Ex. Identifiant 1 pour PARIS
La formule est la suivante, pour:
Cellule active B10 (doit recevoir PARIS), donnée en A10
(1), tableau en Q2:R6 (1 PARIS, 2 NANTE, etc...)
ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-1],R[-8]C[15]:R[-4]
C[16],2)"
Cela fonctionne très bien pour cette ligne, mais à la
ligne suivante, soit pour la donnée en A11, cela ne
fonctionne plus étant donné que le tableau ne bouge pas!
Il faut donc que j'arrive à remplacer les valeurs [-8]par
des variables ! COMMENT FAIRE ?
Ex. sur base des données ci-dessus, je détermine la
position en ligne de la cellule active que je mets dans
une variable, soit
Ligne = ActiveCell.Row (réponse 10)
je remplace maintenant -8 par Ligne-2 (réponse 8), il
faut maintenant inverser le signe ? comment fait-on ?
Mais, beaucoup plus grave, dès que je remplace le -8 par
ma variable, VB n'accepte pas, pourquoi ?
Merci, d'avoir pris la peine de lire mon problème, toutes
vos remarques ou reccommandations seront les bienvenues.
D'avance merci


.