Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Recherche cellule dans feuil precedente

22 réponses
Avatar
Manu
Bonsoir,
Encore un nouveau soucis, mais celui si me parait plus chaud, c'est pour
cela que je joint un fichier exemple :

http://www.cijoint.fr/cjlink.php?file=cj201103/cijZRDASg8.xls

En faites, je veux aller chercher une cellule mais dans la feuil qui me
precede, j'ai fais bien sur une recherchev, mais ca ne peut aller car je
souhaite tjrs faire les recherches dans la feuil precedentes, je pense avoir
bien expliqué sur le fichier joint.

Dites moi si je ne suis pas clair.

Merci à vous

Manu

10 réponses

1 2 3
Avatar
MichD
Bonjour,

Le principe va comme suit :

'------------------------------------------
Sub test()

With ActiveSheet
'Si la feuille n'est pas la première feuille
If .Index > 1 Then
'Avec la feuille précédente
With .Previous
'Si tu veux récupérer le nom de la feuille précédente
Nom = .Name
'La valeur de A1 de la feuille précédente
a = .Range("A1")
End With
End If
End With

End Sub
'------------------------------------------


MichD
--------------------------------------------
"Manu" a écrit dans le message de groupe de discussion : 4d7f959a$0$5417$

Bonsoir,
Encore un nouveau soucis, mais celui si me parait plus chaud, c'est pour
cela que je joint un fichier exemple :

http://www.cijoint.fr/cjlink.php?file=cj201103/cijZRDASg8.xls

En faites, je veux aller chercher une cellule mais dans la feuil qui me
precede, j'ai fais bien sur une recherchev, mais ca ne peut aller car je
souhaite tjrs faire les recherches dans la feuil precedentes, je pense avoir
bien expliqué sur le fichier joint.

Dites moi si je ne suis pas clair.

Merci à vous

Manu
Avatar
Manu
Merci, mais ce n'est pas toujours A1 que je dois chercher je dois chercher
les mots communs de ma feuil par rapport à la feuil precedente dont la
cellule comporte "rapport" dans la colonne A et qu'il me copie le montant de
cette feuil precedente (col B) et me le colle dans ma feuil de où je lance
la macro et qu'il me le mette en col C. Suis pas sure d'avoir été limpide.

Difficile à expliquer.

Manu

"MichD" a écrit dans le message de news:
ilo5v3$cno$
Bonjour,

Le principe va comme suit :

'------------------------------------------
Sub test()

With ActiveSheet
'Si la feuille n'est pas la première feuille
If .Index > 1 Then
'Avec la feuille précédente
With .Previous
'Si tu veux récupérer le nom de la feuille précédente
Nom = .Name
'La valeur de A1 de la feuille précédente
a = .Range("A1")
End With
End If
End With

End Sub
'------------------------------------------


MichD
--------------------------------------------
"Manu" a écrit dans le message de groupe de discussion :
4d7f959a$0$5417$

Bonsoir,
Encore un nouveau soucis, mais celui si me parait plus chaud, c'est pour
cela que je joint un fichier exemple :

http://www.cijoint.fr/cjlink.php?file=cj201103/cijZRDASg8.xls

En faites, je veux aller chercher une cellule mais dans la feuil qui me
precede, j'ai fais bien sur une recherchev, mais ca ne peut aller car je
souhaite tjrs faire les recherches dans la feuil precedentes, je pense
avoir
bien expliqué sur le fichier joint.

Dites moi si je ne suis pas clair.

Merci à vous

Manu

Avatar
Manu
J'essai avec ton code d'y inclure le code que m'a donné Isabelle :

Dim i As Integer
For i = Range("A65536").End(xlUp).Row To 1 Step -1
If Range("A" & i) Like "*Rapport*" Then
Range("B" & i) = Range("A" & i)
Range("A" & i) = ""
End If
Next
End Sub

Ce que je penserais ....

Sub test()

With ActiveSheet
If .Index > 1 Then
With .Previous
Nom = .Name
Nom = Range("A65536").End(xlUp).Row To 1 Step -1
If Range("A" & i) Like "*Rapport*" Then
Range("C" & i) = Range("B" & i) mais de la feuil precedente
End With
End If
End With
End Sub

Qu'est ce que c'est costaud...... je sais que je suis loin tres loin, mais
bon.

Merci

Manu


"MichD" a écrit dans le message de news:
ilo5v3$cno$
Bonjour,

Le principe va comme suit :

'------------------------------------------
Sub test()

With ActiveSheet
'Si la feuille n'est pas la première feuille
If .Index > 1 Then
'Avec la feuille précédente
With .Previous
'Si tu veux récupérer le nom de la feuille précédente
Nom = .Name
'La valeur de A1 de la feuille précédente
a = .Range("A1")
End With
End If
End With

End Sub
'------------------------------------------


MichD
--------------------------------------------
"Manu" a écrit dans le message de groupe de discussion :
4d7f959a$0$5417$

Bonsoir,
Encore un nouveau soucis, mais celui si me parait plus chaud, c'est pour
cela que je joint un fichier exemple :

http://www.cijoint.fr/cjlink.php?file=cj201103/cijZRDASg8.xls

En faites, je veux aller chercher une cellule mais dans la feuil qui me
precede, j'ai fais bien sur une recherchev, mais ca ne peut aller car je
souhaite tjrs faire les recherches dans la feuil precedentes, je pense
avoir
bien expliqué sur le fichier joint.

Dites moi si je ne suis pas clair.

Merci à vous

Manu

Avatar
DanielCo
Bonsoir,
En C2, ppour février et à condition que le nom des onglets soit
conforme à l'orthographe utilisé par Excel (sans majuscule et avec les
accents) :

=RECHERCHEV(A2;INDIRECT("'"&TEXTE(DATEVAL(STXT(CELLULE("nomfichier";A1);TROUVE("]";CELLULE("nomfichier";A1))+1;31))-1;"mmmm
aaaa")&"'!$A$2:$B$15");2;0)
Daniel


Bonsoir,
Encore un nouveau soucis, mais celui si me parait plus chaud, c'est pour cela
que je joint un fichier exemple :

http://www.cijoint.fr/cjlink.php?file=cj201103/cijZRDASg8.xls

En faites, je veux aller chercher une cellule mais dans la feuil qui me
precede, j'ai fais bien sur une recherchev, mais ca ne peut aller car je
souhaite tjrs faire les recherches dans la feuil precedentes, je pense avoir
bien expliqué sur le fichier joint.

Dites moi si je ne suis pas clair.

Merci à vous

Manu
Avatar
Manu
Trop Beau,
Merci Daniel
Manu

"DanielCo" a écrit dans le message de news:
ilo8dd$imm$
Bonsoir,
En C2, ppour février et à condition que le nom des onglets soit conforme à
l'orthographe utilisé par Excel (sans majuscule et avec les accents) :

=RECHERCHEV(A2;INDIRECT("'"&TEXTE(DATEVAL(STXT(CELLULE("nomfichier";A1);TROUVE("]";CELLULE("nomfichier";A1))+1;31))-1;"mmmm
aaaa")&"'!$A$2:$B$15");2;0)
Daniel


Bonsoir,
Encore un nouveau soucis, mais celui si me parait plus chaud, c'est pour
cela que je joint un fichier exemple :

http://www.cijoint.fr/cjlink.php?file=cj201103/cijZRDASg8.xls

En faites, je veux aller chercher une cellule mais dans la feuil qui me
precede, j'ai fais bien sur une recherchev, mais ca ne peut aller car je
souhaite tjrs faire les recherches dans la feuil precedentes, je pense
avoir bien expliqué sur le fichier joint.

Dites moi si je ne suis pas clair.

Merci à vous

Manu




Avatar
Manu
Bizarre,

Quand je fais ca, la formule bloque sur le mot CELLULE
=si(esterreur(RECHERCHEV(A2;INDIRECT("'"&TEXTE(DATEVAL(STXT(CELLULE("nomfichier";A1);TROUVE("]";CELLULE("nomfichier";A1))+1;31))-1;"mmmm
aaaa")&"'!$A$2:$B$15");2;0));"";RECHERCHEV(A2;INDIRECT("'"&TEXTE(DATEVAL(STXT(CELLULE("nomfichier";A1);TROUVE("]";CELLULE("nomfichier";A1))+1;31))-1;"mmmm
aaaa")&"'!$A$2:$B$15");2;0))


"DanielCo" a écrit dans le message de news:
ilo8dd$imm$
Bonsoir,
En C2, ppour février et à condition que le nom des onglets soit conforme à
l'orthographe utilisé par Excel (sans majuscule et avec les accents) :

=RECHERCHEV(A2;INDIRECT("'"&TEXTE(DATEVAL(STXT(CELLULE("nomfichier";A1);TROUVE("]";CELLULE("nomfichier";A1))+1;31))-1;"mmmm
aaaa")&"'!$A$2:$B$15");2;0)
Daniel


Bonsoir,
Encore un nouveau soucis, mais celui si me parait plus chaud, c'est pour
cela que je joint un fichier exemple :

http://www.cijoint.fr/cjlink.php?file=cj201103/cijZRDASg8.xls

En faites, je veux aller chercher une cellule mais dans la feuil qui me
precede, j'ai fais bien sur une recherchev, mais ca ne peut aller car je
souhaite tjrs faire les recherches dans la feuil precedentes, je pense
avoir bien expliqué sur le fichier joint.

Dites moi si je ne suis pas clair.

Merci à vous

Manu




Avatar
DanielCo
Je te retourne le classeur modifié :
http://www.cijoint.fr/cjlink.php?file=cj201103/cijo7lUafX.xls
Daniel


Bizarre,

Quand je fais ca, la formule bloque sur le mot CELLULE
=si(esterreur(RECHERCHEV(A2;INDIRECT("'"&TEXTE(DATEVAL(STXT(CELLULE("nomfichier";A1);TROUVE("]";CELLULE("nomfichier";A1))+1;31))-1;"mmmm
aaaa")&"'!$A$2:$B$15");2;0));"";RECHERCHEV(A2;INDIRECT("'"&TEXTE(DATEVAL(STXT(CELLULE("nomfichier";A1);TROUVE("]";CELLULE("nomfichier";A1))+1;31))-1;"mmmm
aaaa")&"'!$A$2:$B$15");2;0))


"DanielCo" a écrit dans le message de news:
ilo8dd$imm$
Bonsoir,
En C2, ppour février et à condition que le nom des onglets soit conforme à
l'orthographe utilisé par Excel (sans majuscule et avec les accents) :

=RECHERCHEV(A2;INDIRECT("'"&TEXTE(DATEVAL(STXT(CELLULE("nomfichier";A1);TROUVE("]";CELLULE("nomfichier";A1))+1;31))-1;"mmmm
aaaa")&"'!$A$2:$B$15");2;0)
Daniel


Bonsoir,
Encore un nouveau soucis, mais celui si me parait plus chaud, c'est pour
cela que je joint un fichier exemple :

http://www.cijoint.fr/cjlink.php?file=cj201103/cijZRDASg8.xls

En faites, je veux aller chercher une cellule mais dans la feuil qui me
precede, j'ai fais bien sur une recherchev, mais ca ne peut aller car je
souhaite tjrs faire les recherches dans la feuil precedentes, je pense
avoir bien expliqué sur le fichier joint.

Dites moi si je ne suis pas clair.

Merci à vous

Manu




Avatar
Manu
Oui, mais comment se fais t'il que je ne peux pas lui dire si mon resultat
est une erreur alors rien sinon donne moi le bon resultat, ce que l'on fais
classiquement dans les recherchev.

C'est vraiment etrange

Merci encore Daniel.

Manu


"DanielCo" a écrit dans le message de news:
iloeas$25i$
Je te retourne le classeur modifié :
http://www.cijoint.fr/cjlink.php?file=cj201103/cijo7lUafX.xls
Daniel


Bizarre,

Quand je fais ca, la formule bloque sur le mot CELLULE
=si(esterreur(RECHERCHEV(A2;INDIRECT("'"&TEXTE(DATEVAL(STXT(CELLULE("nomfichier";A1);TROUVE("]";CELLULE("nomfichier";A1))+1;31))-1;"mmmm
aaaa")&"'!$A$2:$B$15");2;0));"";RECHERCHEV(A2;INDIRECT("'"&TEXTE(DATEVAL(STXT(CELLULE("nomfichier";A1);TROUVE("]";CELLULE("nomfichier";A1))+1;31))-1;"mmmm
aaaa")&"'!$A$2:$B$15");2;0))


"DanielCo" a écrit dans le message de news:
ilo8dd$imm$
Bonsoir,
En C2, ppour février et à condition que le nom des onglets soit conforme
à l'orthographe utilisé par Excel (sans majuscule et avec les accents) :

=RECHERCHEV(A2;INDIRECT("'"&TEXTE(DATEVAL(STXT(CELLULE("nomfichier";A1);TROUVE("]";CELLULE("nomfichier";A1))+1;31))-1;"mmmm
aaaa")&"'!$A$2:$B$15");2;0)
Daniel


Bonsoir,
Encore un nouveau soucis, mais celui si me parait plus chaud, c'est
pour cela que je joint un fichier exemple :

http://www.cijoint.fr/cjlink.php?file=cj201103/cijZRDASg8.xls

En faites, je veux aller chercher une cellule mais dans la feuil qui me
precede, j'ai fais bien sur une recherchev, mais ca ne peut aller car
je souhaite tjrs faire les recherches dans la feuil precedentes, je
pense avoir bien expliqué sur le fichier joint.

Dites moi si je ne suis pas clair.

Merci à vous

Manu










Avatar
isabelle
bonjour Manu,

utilisation du point devant range est *important* entre le With et le
End With

Sub test()
With ActiveSheet
If .Index > 1 Then

'With .Previous signifie que ce qui suit
'entre le With et le End With
'va s'executer sur la feuille précédente

With .Previous
For i = .Range("A65536").End(xlUp).Row To 1 Step -1
If .Range("A" & i) Like "*Rapport*" Then
.Range("B" & i) = .Range("A" & i)
.Range("A" & i) = ""
.Range("F" & i) = .Range("C" & i) + .Range("D" & i)
.Rows(i + 1).Insert shift:=xlDown
End If
Next
End With
End If
End With
End Sub

isabelle


Le 2011-03-15 13:35, Manu a écrit :
J'essai avec ton code d'y inclure le code que m'a donné Isabelle :


Avatar
Manu
Bonsoir Isabelle,

Ce qui signifierais que je devrais mettre le end with ici ?

Sub test()

With ActiveSheet
If .Index > 1 Then
With .Previous
Nom = .Name
Nom = Range("A65536").End(xlUp).Row To 1 Step -1
If Range("A" & i) Like "*Rapport*" Then
End With
End If
Range("C" & i) = Range("B" & i) mais de la feuil precedente
End If
End With
End Sub

Merci

"isabelle" a écrit dans le message de news:
iloh7v$bsj$
bonjour Manu,

utilisation du point devant range est *important* entre le With et le End
With

Sub test()
With ActiveSheet
If .Index > 1 Then

'With .Previous signifie que ce qui suit
'entre le With et le End With
'va s'executer sur la feuille précédente

With .Previous
For i = .Range("A65536").End(xlUp).Row To 1 Step -1
If .Range("A" & i) Like "*Rapport*" Then
.Range("B" & i) = .Range("A" & i)
.Range("A" & i) = ""
.Range("F" & i) = .Range("C" & i) + .Range("D" & i)
.Rows(i + 1).Insert shift:=xlDown
End If
Next
End With
End If
End With
End Sub

isabelle


Le 2011-03-15 13:35, Manu a écrit :
J'essai avec ton code d'y inclure le code que m'a donné Isabelle :


1 2 3