Rechercher une feuille de calcul

Bonjour à tous,

Je suis novice en VBA

Je cherche à créer une macro qui va me chercher dans un autre fichier l'onglet correspondant au nom qui se trouve dans la colonne "C" de la récap de ma macro. Et cela ainsi de suite...

Je ne sais pas si je suis claire.

Je vous joins un exemple de fichier et la macro. Je bloque sur la fonction "wksFeuilleCherchée"

Je vous remercie pour l'aide que vous pouvez m'apporter

13macro-recap-r.xlsm (37.99 Ko)

Salut,

En regardant ta macro d’un peu proche, on a l’impression que tu as piqué des bouts de code de-ci, de-là, sans trop savoir ce que tu faisais. Par exemple tu utilises la variable i, mais tu ne lui y affectes jamais de valeur !!!!!!!

Et je ne pense pas que tu as pu essayer ta macro, puisque de nombreuses erreurs empêchent d’avancer. Par exemple tu as mal orthographié Worksheet (tu as écrit worsheet) ou tu as écrit wksFeuilleCherchée.Active à la place d’Activate ce qui bloque la macro.

Ces quelques erreurs corrigées afin d’avancer, on se rend compte que lorsque tu veux passer en revue les feuilles du fichier inscrit en K1 de la feuille ‘’Récap’’ du fichier ‘’Macro récap R’’ – appelons-le le ‘’Fichier Cible’’, tu ne le sélectionnes d’aucune manière et qu’en fait tu passes en revue les feuilles du fichier ‘’Fichier Cible’’ lui-même !!!!

Je n’ai donc même plus cherché à saisir ton incrémentation de la variable ‘’Ligne’’ afin d’essayer de comprendre ce que tu voulais en faire.

Donc si tu veux de l’aide de ma part, on va laisser tomber cette macro d’apprenti-sorcier et on part sur de nouvelles bases. J’ai compris que tu voulais visiter le fichier ‘’ACLDI R300 Factures LBP SIEGE 12-15’’ – appelons-le le ‘’Fichier Source’’, y trouver la feuille correspondant (exactement ?) à l’une ou l’autre référence de la colonne C de la feuille ‘Récap’ et que tu voulais transférer des données du ‘’Fichier Source’’ au ‘’Fichier Cible’’.

Explique-moi alors avec des mots clairs les différentes étapes que tu réalises et/ou que tu voudrais voir automatiser, en faisant référence aux références Excel. Dis-moi par exemple : je voudrais pouvoir sélectionner une cellule de la colonne C de la feuille ‘’Récap’’ du ‘’Fichier Cible’’ et que la macro aille cherche la feuille correspondant à la référence sélectionnée dans le ‘’Fichier Source’’ et qu’elle y reporte la valeur de la cellule A1000 dans la cellule D1000 de la feuille active.

Cordialement.

Bonsoir Yvouille,

Merci d'avoir d'avoir essayé de comprendre ce que j'ai voulu faire. Je vais essayer d'être claire :

1) Reporter dans l'onglet "récap" du fichier cible en colonne A & B , les colonnes B & C de l'onglet "cycle contrôlé" du fichier source (nombre de ligne variable)

2) Dans l'onglet "récap", transformer en colonne C les données de la colonne A par la formule : =LEFT(RC[-2],4)&""-""&RIGHT(RC[-2],4)

3) Je souhaite que la macro me recherche dans le fichier source, les onglets portant le même nom que les données de la colonne C du fichier cible, pour me reporter en colonne D&E du fichier cible, les données se trouvant dans le fichier source en G30 et H30

4) Et pour finir dans le fichier cible, je souhaite l'opération suivante (en colonne F) : colonne F = colonne D - colonne E

Merci beaucoup pour ton aide !

Salut,

Dans le fichier ci-joint, j’ai placé la macro ‘’Export’’ derrière le bouton ‘’Exporter les données’’ (voir le Module_Y).

Krysprols a écrit :

1) Reporter dans l'onglet "récap" du fichier cible en colonne A & B , les colonnes B & C de l'onglet "cycle contrôlé" du fichier source (nombre de ligne variable)

Comme tu n’as pas dit s’il fallait reporter ces données à la suite de celles déjà en place ou en remplacement de celles déjà en place, j’ai opté pour cette deuxième variante. Si ce n’est pas correct, à revoir.
Krysprols a écrit :

2) Dans l'onglet "récap", transformer en colonne C les données de la colonne A par la formule : =LEFT(RC[-2],4)&""-""&RIGHT(RC[-2],4)

Si tu n’en as pas besoin pour autre chose, cette colonne me semble totalement superflue ; je l’ai donc supprimée. Il est possible de la remplacer en modifiant le code en conséquence.

Krysprols a écrit :

3) Je souhaite que la macro me recherche dans le fichier source, les onglets portant le même nom que les données de la colonne C du fichier cible, pour me reporter en colonne D&E du fichier cible, les données se trouvant dans le fichier source en G30 et H30

Il me semble que cette partie devrait être réalisée selon tes souhaits. Comme j’ai supprimé la colonne C, les résultats sont reportés respectivement dans les nouvelles colonnes C et D. Dans tes cellules G30 des feuilles du Fichier source, il n’y a jamais de montants.

Krysprols a écrit :

4) Et pour finir dans le fichier cible, je souhaite l'opération suivante (en colonne F) : colonne F = colonne D - colonne E

Toujours vu la suppression de ta colonne C, l’opération désirée se passe maintenant dans la colonne E. Je n’y ai pas placé de formule, mais directement les résultats des soustractions désirées.

On a fait un pas en avant ?

bonjour Yvouille

Mille mercis pour ton aide, on a fait un grand pas en avant

Je comprends un peu mieux le raisonnement qu’il fallait avoir.

Je viens de tester le code que tu m’as transmis, il fonctionne très bien ,sauf dans le cas où un montant se trouve en G30.

Encore une fois merci beaucoup pour le temps que tu me consacre !

Salut,

Krysprols a écrit :

Je viens de tester le code que tu m’as transmis, il fonctionne très bien, sauf dans le cas où un montant se trouve en G30.

Désolé, j’ai eu l’idée d’un code s’il n’y avait pas de valeur dans les cellules G30 visitées et j’ai oublié de tester ma solution.

Dans le fichier ci-joint, le problème devrait être résolu.

Amicalement.

Hello ,

Ca fonctionne ! Merci beaucoup

Mais désolée de t'embêter encore

Lorsque une somme est reportée en colonne C et rien en colonne D, la "somme/soustraction" ne se fait pas en colonne E.

Mille mercis

Amicalement

Mais, c'est bien volontiers

Super !! Ca fonctionne

Merci Yvouille

Rechercher des sujets similaires à "rechercher feuille calcul"