Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

formule excel dans vba: colonnes et recherchev

9 réponses
Avatar
blandine
Bonjour,

J'ai essayé de regarder comment une formule excel etait utilisée.
Cependant, qd je fais de meme, ils me disent que cela doit faire appel a une
fonction sub (a cause des parenthèse). Pourtant, j'ai mis des guillemets, et
.Formula:

y = Sheets("données").Cells(20, m)
z.Formula = "COLONNES("B" & : & y)"
Cells(o, k) = "=RECHERCHEV( G3; 'à importer de Quest'!B & ":" & y; z; FAUX)"
http://cjoint.com/?hxpDM0CjdJ
(dans ratios5)

cf question compter le nombre de colonnes

Merci

9 réponses

Avatar
Daniel
Bonjour.
Essaie :
Cells(o, k).FormulaLocal = "=RECHERCHEV( G3; 'à importer de Quest'!B" & ":"
& y & ";" & z & "; FAUX)"
z.FormulaLocal = "=COLONNES(B" & ":" & y & ")"
Cordialement.
Daniel
"blandine" a écrit dans le message de
news:
Bonjour,

J'ai essayé de regarder comment une formule excel etait utilisée.
Cependant, qd je fais de meme, ils me disent que cela doit faire appel a
une
fonction sub (a cause des parenthèse). Pourtant, j'ai mis des guillemets,
et
.Formula:

y = Sheets("données").Cells(20, m)
z.Formula = "COLONNES("B" & : & y)"
Cells(o, k) = "=RECHERCHEV( G3; 'à importer de Quest'!B & ":" & y; z;
FAUX)"
http://cjoint.com/?hxpDM0CjdJ
(dans ratios5)

cf question compter le nombre de colonnes

Merci


Avatar
blandine
Bonjour,

J'ai essayé, ca a l'air de marcher pour la fonction recherchev, par
contre, pour colonnes, ils marquent objet requis, erreur 424.
http://cjoint.com/?hylsUJ81mz
Si tu as une idée...

Merci

Blandine
Avatar
Daniel
Bonjour.
Puisque z est une variable :
z = Evaluate("columns(B" & ":" & y & ")")
Daniel
"blandine" a écrit dans le message de
news:
Bonjour,

J'ai essayé, ca a l'air de marcher pour la fonction recherchev, par
contre, pour colonnes, ils marquent objet requis, erreur 424.
http://cjoint.com/?hylsUJ81mz
Si tu as une idée...

Merci

Blandine


Avatar
blandine
Bonjour Daniel,

J'ai essayé ce que tu as proposé, et cela me fait une incompatibilité de
type. J'ai essayé de me débrouiller autrement en le faisant sur excel, et
donc en ayant directement la valeur de l'etendue des colonnes, mais j'ai
rencontré 2 nouveaux problemes:
-lorsque j'etend les formules excel, je ne sais pas comment faire pour que
cela prenne la donnée a l'interieur de la cellule. Par exemple si dans la
cellule I20, il y a indiqué AJ, je voudrais que cela fasse
=COLONNES($B:"I20"), et qu'on puisse l'etirer pour les cellules I21... Ca je
l'ai fait manuellement
-Pour la formule recherchev, tout marche, au détail pres que dans la
cellule(o, 7), il y a du texte qu'il faut rechercher, et non un chiffre. En
effet, quand on utilise la formule recherchev il faut mettre des guillemets
sur le texte que l'on recherche. J'ai essayé de rajouter des & et des
guillemets avant et apres, mais ca ne marche pas.

Donc si tu sais comment faire pour que sur VBA, on rajoute des guillemets
avant d'autres guillemets...
Merci

Blandine

ici:
Cells(o, k).FormulaLocal = "=RECHERCHEV( " & Cells(o, 7) & " ; 'à importer
de Quest'!B" & ":" & y & ";" & z & "; FAUX)"
donne:
=RECHERCHEV( Continental; 'à importer de Quest'!B:AJ;35; FAUX)
il faudrait:
=RECHERCHEV( "Continental"; 'à importer de Quest'!B:AJ;35; FAUX)
Avatar
Daniel
La formule que je t'ai donnée fonctionne à condition que la variable y est
une valeur compatible avec la formule.
=COLONNES(INDIRECT("B:"&I20))
Si la cellule cells(o,7) contient du texte, tu n'as pas besoin de le mettre
entrre guillemets.
Daniel
"blandine" a écrit dans le message de
news:
Bonjour Daniel,

J'ai essayé ce que tu as proposé, et cela me fait une incompatibilité de
type. J'ai essayé de me débrouiller autrement en le faisant sur excel, et
donc en ayant directement la valeur de l'etendue des colonnes, mais j'ai
rencontré 2 nouveaux problemes:
-lorsque j'etend les formules excel, je ne sais pas comment faire pour que
cela prenne la donnée a l'interieur de la cellule. Par exemple si dans la
cellule I20, il y a indiqué AJ, je voudrais que cela fasse
=COLONNES($B:"I20"), et qu'on puisse l'etirer pour les cellules I21... Ca
je
l'ai fait manuellement
-Pour la formule recherchev, tout marche, au détail pres que dans la
cellule(o, 7), il y a du texte qu'il faut rechercher, et non un chiffre.
En
effet, quand on utilise la formule recherchev il faut mettre des
guillemets
sur le texte que l'on recherche. J'ai essayé de rajouter des & et des
guillemets avant et apres, mais ca ne marche pas.

Donc si tu sais comment faire pour que sur VBA, on rajoute des guillemets
avant d'autres guillemets...
Merci

Blandine

ici:
Cells(o, k).FormulaLocal = "=RECHERCHEV( " & CStr(Cells(o, 7) & " ; 'à
importer
de Quest'!B" & ":" & y & ";" & z & "; FAUX)"
donne:
=RECHERCHEV( Continental; 'à importer de Quest'!B:AJ;35; FAUX)
il faudrait:
=RECHERCHEV( "Continental"; 'à importer de Quest'!B:AJ;35; FAUX)


Avatar
blandine
Ta formule marche bien, par contre, si je ne mets pas de guillemets, rien ne
s'affiche. Quand je mets la formule
Cells(o, k).FormulaLocal = "=RECHERCHEV( " & Cells(o, 7) & " ; 'à importer
de Quest'!B" & ":" & y & ";" & z & "; FAUX)"
il affiche une erreur #NOM? sur la cellule car cela correspond à
=RECHERCHEV( Continental; 'à importer de Quest'!B:AJ;35; FAUX)
et non
=RECHERCHEV( "Continental"; 'à importer de Quest'!B:AJ;35; FAUX)
Avatar
Daniel
Au temps pour mmoi :
Cells(o, k).FormulaLocal = "=RECHERCHEV( """ & Cells(o, 7) & """ ; 'à
importer
de Quest'!B" & ":" & y & ";" & z & "; FAUX)"
Daniel
"blandine" a écrit dans le message de
news:
Ta formule marche bien, par contre, si je ne mets pas de guillemets, rien
ne
s'affiche. Quand je mets la formule
Cells(o, k).FormulaLocal = "=RECHERCHEV( " & Cells(o, 7) & " ; 'à importer
de Quest'!B" & ":" & y & ";" & z & "; FAUX)"
il affiche une erreur #NOM? sur la cellule car cela correspond à
=RECHERCHEV( Continental; 'à importer de Quest'!B:AJ;35; FAUX)
et non
=RECHERCHEV( "Continental"; 'à importer de Quest'!B:AJ;35; FAUX)


Avatar
blandine
Merci,

J'ai eu la reponse car j'ai posé une autre question et celle ci a propos de
recherchev, et on me conseillait de rajouter & Chr(34)
ca marche
Mon autre question set que la recherchev marche sauf quand le nom de la
cellule contient aussi un chiffre par exemple: "1001 merci", ou "test 3 test"
Avatar
Daniel
Regarde le classeur à l'adresse :
http://cjoint.com/?hytdwPs36A
Daniel
"blandine" a écrit dans le message de
news:
Merci,

J'ai eu la reponse car j'ai posé une autre question et celle ci a propos
de
recherchev, et on me conseillait de rajouter & Chr(34)
ca marche
Mon autre question set que la recherchev marche sauf quand le nom de la
cellule contient aussi un chiffre par exemple: "1001 merci", ou "test 3
test"