Macro avec une variable dans un lien

Macro avec une variable dans un lien - VB/VBA/VBS - Programmation

Marsh Posté le 18-06-2008 à 14:58:22    

Bonjour,
 
Les cellules de ma colonne sont remplies avec des liaisons RECHERCHEV(A1; c:\marc\annee2008.xls ;FAUX)
J’ai crée une boite de dialogue demandant à l’utilisateurde saisir l’année, ainsi :
Choix = InputBox("Saisissez le mot annee suivi de l’annee souhaitée" )
Jusque la tout va bien, un peu plus loin dans ma macro je demande à la macro de modifier le lien : (A1; c:\marc\annee2008.xls ;FAUX) par un nouveau lien qui sera, si l’utilisateur choisit annee2010 par ex. (A1; c:\marc\annee2010.xls ;FAUX), mon problème c’est que la macro ne comprend pas que c’est la variable choix saisi par l’utilisateur et me retourne partout (A1; c:\marc\choix.xls ;FAUX)
 
Auriez vous des solutions ? :pt1cable:  
 Merci beaucoup !!!!  
 

Reply

Marsh Posté le 18-06-2008 à 14:58:22   

Reply

Marsh Posté le 18-06-2008 à 15:06:25    

Je pense que tu écris qqch comme ca : X.value = "=RECHERCHEV(A1; c:\marc\annee2008.xls ;FAUX)"
Il faudrait que tu écrives : X.value = "RECHERCHEV(A1; c:\marc\" & choix & ".xls ;FAUX)"


---------------
Feedback : http://forum.hardware.fr/hfr/Achat [...] 2666_1.htm
Reply

Marsh Posté le 18-06-2008 à 15:19:51    

Merci babasss pour ta réponse :)
 
Voici mon programme :
 
Columns(Colonne - 2).Select
Selection.Replace What:="\annee2008.xls", _
Replacement:="\& choix & ".xls, _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, _
SearchFormat:=False, ReplaceFormat:=False
 
Ca ne marche pas, et en fait je ne peux pas mettre directement RECHERCHEV car la cellule change (L'operation RECHERCHEV se répète sur 200lignes et elle recherche les cellules de A1 à A200).
 
Des idées...?
merci

Reply

Marsh Posté le 18-06-2008 à 15:47:28    

Essaye comme ca (les quotes étaient mal placés sur la ligne 3)

Code :
  1. Columns(Colonne - 2).Select
  2. Selection.Replace What:="\annee2008.xls", _
  3. Replacement:="\" & choix & ".xls", _
  4. LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, _
  5. SearchFormat:=False, ReplaceFormat:=False


Message édité par babasss le 18-06-2008 à 15:48:03

---------------
Feedback : http://forum.hardware.fr/hfr/Achat [...] 2666_1.htm
Reply

Marsh Posté le 18-06-2008 à 16:37:36    

Super, ça marche très bien, j'avais effectivement mal placé mes guillemets... :)
et si je veux que cette macro se répète sur plusieurs onglets, quel formule magique faut-il insérer?
Merci

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed