Rechercher une donnée dans l'onglet d'un autre fichier

Bonjour à tous,

Je cherche à partir d'une macro existante, qui fonctionne très bien grace à Yvouille , de rajouter une variable sur le nom des onglets à sélectionner.

Cette macro va me copier les deux premières colonnes de l'onglet "cycle contrôlé" et me les coller dans dans un onglet "récap" de la macro, puis va chercher dans le fichier source les onglets portant le nom de la colonne A de l'onglet récap (fichier cible) les cellules G30 et H30 . puis me fait une soustraction dans l'onglet récap du fichier cible.

Ce que je souhaite dans ma "nouvelle" macro c'est exactement la même chose sauf que le nom des onglets a rechercher dans le fichier source commence par "EDS". Et là je bloque car des que je modifie quelques choses ça tourne en rond.

Je vous joins la marco d'origine et un exemple de fichier source.

Merci beaucoup pour votre aide

Krysprols

Bonsoir,

sans trop comprendre mais en "analysant" le code voici la ligne que je vous propose :

If Len(Sheets(i).Name) = 13 Then j = Application.WorksheetFunction.Match(CLng(Mid(Sheets(i).Name, 5, 4) & Mid(Sheets(i).Name, 10, 4)), .Range("A:A"), 0)

13 = parce que maintenant le nom de vos feuilles ont 13 caractères ! EDS_xxxx-xxxx

Mid(Sheets(i).Name, 5, 4) = parce que maintenant les 4 premier chiffres commencent au 5ième caractère et ce sur 4 caractères

Mid(Sheets(i).Name, 10, 4) = parce que maintenant les 4 derniers chiffres commencent au 10ième caractères et ce sur 4 caractères

Mais ce n'est que MA traduction du code...

@ bientôt

LouReeD

Bonsoir,

alors ça marche ?

@ très bientôt

LouReeD

Hello, désolée j'étais malade

Je viens d'essayer le code mais ca ne marche pas il me dit "erreur d'exécution '1004': La méthode Paste de la classe Worksheet a échoué.

Re,

J'ai fait une petite erreur en copiant la formule. Maintenant ca fonctionne en partie. Il ne reporte pas tous les montants .

Je vais encore chercher. Mais de l'aide serait la bien venue

@ Bientôt

Krysprols

Bonsoir,

Ci-joint une nouvelle version à tester.

Bonne soirée

Bouben

Super !

Merci ça fonctionne

Krysprols

Bonjour @ vous deux !

bouben, c'est juste le :

If Left(Sheets(i).Name, 4) = "EDS " Then

?

Franchement, je n'étais pas loin...

Et le projet de Duportal ?

@ bientôt

LouReeD

Bonjour LouReeD,

Très rare qu'on se croise sur un sujet commun, malgré notre présence assidue sur ce forum

Je confirme, le découpage de la chaîne était bon, il manquait juste la modification du test sur la longueur de la chaîne.

Quant au sujet de Duportal, la finalité reste un grand mystère que je n'ai toujours pas éclairci

Il existe une super application (je reconnais !), pourquoi vouloir refaire la même en moins bien ?

Enfin, le sujet est clos pour moi depuis bien longtemps, j'ai lâché l'affaire

Bonne journée

Bouben

Bonjour @ vous deux,

Je tenais encore une fois à vous remercier. C'est grace à des personnes comme vous que nous arrivons à avancer sur ces différents sujets et comprendre et apprendre de nos erreurs.

Merci

@ bientôt Krysprols

bouben,

ceci dit j'ai repris à mon compte (ou sur mon suivi de compte) la gestion "multi carnet de chèque" !

Donc merci @ vous

Merci également pour vos mercis Krysprols

@ bientôt

LouReeD

Rechercher des sujets similaires à "rechercher donnee onglet fichier"