[VBA] Recherche d'une valeur variable dans une autre feuille

Recherche d'une valeur variable dans une autre feuille [VBA] - VB/VBA/VBS - Programmation

Marsh Posté le 29-09-2014 à 17:07:19    

Bonjour à tous,
 
je suis nouveau dans le VBA et j'ai besoin de faire une macro assez complexe et je n'en vois pas le bout.
 
Principe de la macro:
Je cherche en fait à rassembler des valeurs éparpillées dans une seule colonne afin de pouvoir faire des comparatifs simples.
 
Mettons une liste dans une feuille 1 :  
A1
A2
A3
 
Je voudrais faire la recherche de ce que contient "A1" dans une feuille 2. Une fois la valeur trouvée, aller à l'occurence suivante du mot "Total". Une fois la ligne trouvée, se déplacer de 5 colonnes à droite. Copier la valeur de cette cellule en particulier, et la coller dans la feuille 1 en B1.
 
Et si c'est possible, l'automatiser pour une colonne longue d'environ 600 lignes...
 
Quand j'essaye d'enregistrer la macro, voici le code que j'otiens :
 

Code :
  1. Sub Macro12()
  2. '
  3. ' Macro12 Macro
  4. '
  5. '
  6.     ActiveCell.Select
  7.     Selection.Copy
  8.     Sheets("Detailed Billing - VM" ).Select
  9.     Cells.Find(What:="poney", After:=ActiveCell, _
  10.         LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByColumns, _
  11.         SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False).Activate
  12.     Cells.Find(What:="Sub-Total:", After:=ActiveCell, LookIn:=xlValues, _
  13.         LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _
  14.         MatchCase:=False, SearchFormat:=False).Activate
  15.     ActiveCell.Offset(0, 13).Range("A1" ).Select
  16.     Application.CutCopyMode = False
  17.     Selection.Copy
  18.     Sheets("Virtual Servers" ).Select
  19.     ActiveCell.Offset(0, 3).Range("A1" ).Select
  20.     Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
  21.         :=False, Transpose:=False
  22. End Sub


 
Ca fonctionne seulement pour une cellule. Si je me déplace en A2, la valeur qui sera collée en B2 sera exactement la même qu'en B1 !! Le problème c'est qu'il me cherche toujours la valeur "poney" alors que je souhaiterai qu'il cherche la valeur en A2, et pas une valeur fixe !  
 
 
Est-ce possible ?


Message édité par darksiden00b le 29-09-2014 à 17:09:10
Reply

Marsh Posté le 29-09-2014 à 17:07:19   

Reply

Marsh Posté le 22-10-2014 à 13:29:11    

salut,
 
c'est a mon avis plus d'une fonction que d'une macro que tu as besoin a laquelle tu pourra passer en paramètre la valeur de ta cellule A1 (et en triant A2,3,4,...)

Reply

Sujets relatifs:

Leave a Replay

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