OVH Cloud OVH Cloud

recherche de cellules

2 réponses
Avatar
lematou
Bonjour,
(vba XLS2000 sous xp pro)
est il possible d'avoir une petite explication sur les champs suivants.
Dans une précédente question je voulais me positionner sur la seconde ligne
dispo de mon fichier.
la réponse qui m' a été faite est formidable mais aujourdh'ui je me rends
compte que si je ne délimite pas la zone a tester j'ai quelques soucis.
La formule miracle de AV était:
x = Cells.Find("*", , 1, , 1, 2).Column
y = Cells.Find("*", , 1, , 1, 2).Row
je voudrais savoir à quoi corespondent les ", ,1,1,2"
parce que je voudrais en fait lui dire de ne considérer que la zone allant
de "A" à "J" par exemple.

Merci encore pour votre aide
Jacks

2 réponses

Avatar
AV
<| Dans une précédente question je voulais me positionner sur la seconde ligne
<| dispo de mon fichier.

Je suppose que tu veux dire "ma feuille" ??

<| x = Cells.Find("*", , 1, , 1, 2).Column
<| y = Cells.Find("*", , 1, , 1, 2).Row
<| je voudrais savoir à quoi corespondent les ", ,1,1,2"

Il s'agit de la présentation des arguments de la méthode "Find" sous forme
d'index et non de constantes vba (voir aide vba sur la méthode "Find")
Ces écritures sont strictement équivalentes :
Dernière ligne renseignée de la feuille
x = Cells.Find("*", , xlFormulas, , xlByColumns, xlPrevious).Row
x = Cells.Find("*", , 1, , 2, 2).Row
ou bien
Dernière colonne renseignée de la feuille
y = Cells.Find("*", , xlFormulas, , xlByColumns, xlPrevious).Column
y = Cells.Find("*", , 1, , 2, 2).Column
ou bien
Dernière ligne renseignée de la dernière colonne renseignée de la feuille
z = Cells.Find("*", , xlFormulas, , xlByColumns, xlPrevious).Row
z = Cells.Find("*", , 1, , 2, 2).Row

<| parce que je voudrais en fait lui dire de ne considérer que la zone allant
<| de "A" à "J" par exemple.

Il suffit que tu remplaces "Cells" par [A:J]

AV
Avatar
lematou
Merci
Merci AV pour cette explication et aussi pour l'aide que tu ma apportée sur
ce point en général
Mais sans oublier les autres Merci a tous pour tout
Jacks



<| Dans une précédente question je voulais me positionner sur la seconde ligne
<| dispo de mon fichier.

Je suppose que tu veux dire "ma feuille" ??

<| x = Cells.Find("*", , 1, , 1, 2).Column
<| y = Cells.Find("*", , 1, , 1, 2).Row
<| je voudrais savoir à quoi corespondent les ", ,1,1,2"

Il s'agit de la présentation des arguments de la méthode "Find" sous forme
d'index et non de constantes vba (voir aide vba sur la méthode "Find")
Ces écritures sont strictement équivalentes :
Dernière ligne renseignée de la feuille
x = Cells.Find("*", , xlFormulas, , xlByColumns, xlPrevious).Row
x = Cells.Find("*", , 1, , 2, 2).Row
ou bien
Dernière colonne renseignée de la feuille
y = Cells.Find("*", , xlFormulas, , xlByColumns, xlPrevious).Column
y = Cells.Find("*", , 1, , 2, 2).Column
ou bien
Dernière ligne renseignée de la dernière colonne renseignée de la feuille
z = Cells.Find("*", , xlFormulas, , xlByColumns, xlPrevious).Row
z = Cells.Find("*", , 1, , 2, 2).Row

<| parce que je voudrais en fait lui dire de ne considérer que la zone allant
<| de "A" à "J" par exemple.

Il suffit que tu remplaces "Cells" par [A:J]

AV