jean-louis tecnad
Messages postés9Date d'inscriptionlundi 30 décembre 2013StatutMembreDernière intervention 5 janvier 2014
-
4 janv. 2014 à 11:41
jean-louis tecnad
Messages postés9Date d'inscriptionlundi 30 décembre 2013StatutMembreDernière intervention 5 janvier 2014
-
5 janv. 2014 à 22:10
Bonjour,
J'espère que les lendemains de réveillons ne sont pas trop pénibles pour toutes les têtes pensantes du forum !!!!
Voici mon problème :
une variable emPloyes qui va pêcher dans la feuille courante le chemin et le nom.xls. ok ça fonctionne jusque là.
dim emPloyes as string
emPloyes = [d99]
Je souhaite remplir cette commande qui me fait des misères depuis le ";" dans un module VBA
alors que lorsque je la remplis dans une simple cellule excel elle fonctionne mais
bien sûr sans la variable emPloyes.
RECHERCHEV(A1;[employes]!'Liste des employes'!$A$1:$E$335;5;FAUX)
Je vous remercie d'avance de vos éclaircissements.
Jean-Louis
A voir également:
"Php variables" "server api" "build date" "php version 4.4.4"
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018212 Modifié par ucfoutu le 4/01/2014 à 11:56
Bonjour,
la notation [employes] (entre crochets, donc) ne correspond pas à une chaîne de caractères et tendrait à se référer à une adresse nommée.
Ne nous montre pas la formule, mais ce que tu as écrit en VBA pour spécifier cette formule
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
jean-louis tecnad
Messages postés9Date d'inscriptionlundi 30 décembre 2013StatutMembreDernière intervention 5 janvier 2014 4 janv. 2014 à 12:04
Merci Ucfoutu pour cette réponse hyper-rapide, serait-il possible d'obtenir en complément la ligne comme elle devrait se présenter. J'ai bien compris que le mode
[] était pas juste, la preuve c'est que la variable "employes" n'y est pas reconnue (P majuscule)
Encore merci d'avance.
JL
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018212 Modifié par ucfoutu le 4/01/2014 à 12:34
J'avais pourtant été clair :
"Ne nous montre pas la formule, mais ce que tu as écrit en VBA pour spécifier cette formule"
Puisque tu as dit dans ton premier message :
"Je souhaite remplir cette commande qui me fait des misères depuis le ";" dans un module VBA"
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018212 4 janv. 2014 à 18:34
Et maintenant voilà (donc forcément plus haut et rendant le suivi compliqué) DEUX commentaires ! Le bouton "répondre au sujet" serait-il invisible ?
Je ne poursuivrai que lorsque tu auras au moins fait ce geste simple (et ferai ensuite le "ménage" dans tout ce mic-mac)
Vous n’avez pas trouvé la réponse que vous recherchez ?
jean-louis tecnad
Messages postés9Date d'inscriptionlundi 30 décembre 2013StatutMembreDernière intervention 5 janvier 2014 4 janv. 2014 à 18:41
Bonsoir Ucfoutu,
Tout arrive, je pensais que le bouton réponse était destiné lorsque une solution était proposée, alors que pour l'instant j'ai plutôt des questions. Je saurai pour la prochaine fois.
Encore merci, mais toujours pas bon pour ma petite tête.
Pour m'aider, j'ai tapé un recherchev dans une feuille avec enregistrement de macro.
Voila ce que je trouve dans le module :
ActiveCell.FormulaR1C1 = _
"=VLOOKUP(RC[-11],'[Liste des employes (1).xls]Liste des
employes'!R1C1:R335C5,5,FALSE)"
je désirerais remplacer : [Liste des employes (1).xls] par la variable "emPloyes" qui contient le chemin + le nom du classeur.
S'il te plait peux-tu me dire comment l'exprimer.
J'espere que je me suis mieux exprimé cette fois-ci
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018212 Modifié par ucfoutu le 4/01/2014 à 19:44
Ménage fait ...
Tu "penses" mal ! Une réponse est une réponse. Un commentaire n'a pas la vocation d'une réponse ! Il a celle de "commenter" une réponse (ici, comme partout ailleurs). Si, en plus, il vient "commenter" son propre message, on s'interroge forcément ...
Revenons à nos moutons :
Une formule n'est rien d'autre qu'une chaîne de caractères.
Et donc : comme pour toute chaîne de caractères devant inclure la valeur d'une variable, elle se construit par concaténation.
Exemple :
toto = "blabla " & titi & " blibli"
ne sera rien d'autre que
toto = "blabla alons bon blibli"
si titi = "allons bon"
Et cette réponse : sans préjufice de la justesse de ta formule (c'est là un autre aspect).
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviend
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018212 4 janv. 2014 à 20:09
"ce que tu m'as dit dans ton dernier message ne répond pas au sujet."
Désolé, mais y répond parfaitement !
Sauf, bien sûr, si tu ne sais pas faire cette concaténation adaptée à cette chaîne de caractères ou que, finalement, ta question n'était pas celle posée (utilisation d'une variable dans une formule écrite depuis VBA).
jean-louis tecnad
Messages postés9Date d'inscriptionlundi 30 décembre 2013StatutMembreDernière intervention 5 janvier 2014 4 janv. 2014 à 20:33
re bonsoir
Voici :
ActiveCell.FormulaR1C1 = _
"=VLOOKUP(RC[-11],employes&'Liste des employes'!R1C1:R335C5,5,FALSE)"
Je demandais juste comment exprimer cette ligne sachant qu'employes est une variable qui contient le chemin et le nom du fichier XLS a consulter. (ça je sais faire), le problème est dans la ligne de code VLOOKUP.
[employes] ou [(employes)] ou [("employes")] ou employes
ne fonctionnent pas.
peut-être c'est "employe.un parametre" ?
Voila j'ai trouvé une réponse, je la poste pour l'intêret de personnes qui comme moi se heurtent à des murs.
Nico4664
Posté le 07-11-2007 à 09:33:44 profilanswer
Ouais, tegu a raison çà fonctionne en utilisant INDIRECT(), je viens de tester.
Tu indiques le chemin de ta plage de donnée dans une cellule :[fichier_du_01112007.xls]Feuil1!$C$1:$L$84
et ta formule devient : RECHERCHEV(A2;INDIRECT(cellule_qui_contient_le_nom_du_fichier);4;FAUX)
Par contre il va te falloir créer une cellule pour chaque nom de fichier.
ucfoutu
Messages postés18038Date d'inscriptionlundi 7 décembre 2009StatutModérateurDernière intervention11 avril 2018212 5 janv. 2014 à 22:07
Oui, bien sûr, mais là, c'est une formule et ce n'est plus :
"Je souhaite remplir cette commande qui me fait des misères depuis le ";" dans un module VBA"