idieordeco
Messages postés28Date d'inscriptionmercredi 7 novembre 2007StatutMembreDernière intervention20 février 2011
-
19 oct. 2008 à 13:57
cs_thierry la fronde
Messages postés351Date d'inscriptionmercredi 21 juillet 2004StatutMembreDernière intervention12 août 2009
-
27 oct. 2008 à 11:02
Bonjour,
Comme toujours, je ne sais pas ou mettre les questions VBA Excel.
Cependant le problème est simple (Pas pour moi)
J'ai un VLOOKUP qui plante :
Nblignes = ActiveSheet.UsedRange.Rows.Count
For i = 1 To Nblignes
L'erreur est en rouge. (Vu que c'est une erreur 1004)
Je veux que le VLOOKUP aille chercher les colonnes sur la deuxième feuille du classeur
J'ai essayé :"Sheet(2)","Sheets(2)","Worksheet(2)","Worksheets(2)","Workbook(2)" et "Workbooks(2)"
Mais rien !
Donc question :
Dans un VLOOKUP, comment renvoyer la deuxième feuille sans faire appel à son nom ?
cs_thierry la fronde
Messages postés351Date d'inscriptionmercredi 21 juillet 2004StatutMembreDernière intervention12 août 2009 19 oct. 2008 à 14:22
bonjour,
essai avec le nom de la feuille :
ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[1],Feuil2!C[-10]:C[-1],2,0)"
Ceci dit indiquer colonne complète dans la formule ne me semble pas justifier cela fait quand même 10 colonnes x 65535 lignes.
récupère uniquement ton tableau avec Selection.End(xlDown).Select et Selection.End(xlToRight).Select
idieordeco
Messages postés28Date d'inscriptionmercredi 7 novembre 2007StatutMembreDernière intervention20 février 2011 19 oct. 2008 à 20:04
Merci pour ta réponse.
Je n'ai pas testé mais je pense que ça ne va pas marcher.
La feuille 2 de mon classeur a un nom aléatoire. Elle s'appelle : inventaire & range("A1").value.
le range A1 est une donnée aléatoire.
Donc, si je la ramène via feuil2, je pense que ça va foirer car ce n'est pas son nom.
Pourtant, logiquement, sheets(2) ça devrait marcher bourdel :(
cs_thierry la fronde
Messages postés351Date d'inscriptionmercredi 21 juillet 2004StatutMembreDernière intervention12 août 2009 27 oct. 2008 à 11:02
bonjour,
ma formule fonctionne mais il faut passer la matrice en reférence absolue :
ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-11], Feuil2!R1C1:R25C7 ,2,0)"
autre solution : créer une plage nommée qui correspond aux cellules voulues de la feuill2
ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-11],maListe,2,0)"
j'ai tester cela fonctionne