Recherche de valeur et extraction de données dans une cellule

Bonjour à tous !

Je reçois des commandes de photo par courriels dont je dois extraire une partie du contenu et le reformater pour passer moi-même commande auprès d'un laboratoire d'impression.

Je peux extraire automatiquement les courriels souhaités vers un CSV qui une fois importé dans Google Sheet me donne une même cellule avec beaucoup de contenu dont celui que je souhaite récupérer et reformater.

Dans l'exemple que je joins, la ligne 2 est ce que je reçois à partir du CSV. Mon CSV peut contenir 50 lignes de ce type en fonction du nombre de commandes que j'inclus dans l'exportation .CSV. En M2, le texte en rouge est celui que je souhaite récupérer. Les lignes 3 et 4 montrent le résultat souhaité et idéalement devrait remplacer la ligne 2.

Dans cet exemple, la commande concerne 2 items mais les commandes peuvent viser entre 1 et 10 items.

Un grand merci d'avance pour toute aide, ce sera vraiment apprécié !!!

Salut,

Je te propose la solution ci-jointe.

A chaque fois que tu cliques sur le bouton en place en M1, les données des lignes 2 et suivantes de la feuille ‘’Récapitulatif’’ sont effacées et remplacées par les données contenues dans les cellules M2 et suivantes de la feuille 10438505ff4808977.

J’ai modifié un peu ta commande afin de pouvoir tester plus aisément.

J’ai considéré que la désignation de tes images commençait toujours pas ‘’CDP’’, mais que le nombre de chiffres pouvait varier. Si ce n’est pas le cas, il faudra adapter.

Cordialement.

Bonjour Yvouille et merci pour ta réponse très rapide !

Je sens que je vais poser une question évidente et j'en suis désolé d'avance mais sais-tu pourquoi je ne vois pas de bouton en M1, ni même de fonction dans la cellule ?

Pour le reste, envoyer les données dans une seconde feuille est bien parfait ainsi et pour répondre à ton commentaire, le préfixe CDP est un acronyme qui varie selon les endroits où sont prises les photographies. Il y a cependant toujours une extension de trois lettres précédées d'un underscore. Je devrais pouvoir adapter ça sans problème.

Il me reste juste à voir ce bouton

Je suis absolument désolé, mais j'ai placé le bouton sur la feuille 10438505ff4808977, puis au dernier moment j'ai eu l'idée de te montrer un fichier qui s'ouvre sur la feuille ''Récapitulatif'' afin que tu vois bien que cette feuille est tout d'abord vide.

Mais ma macro est prévue afin de démarrer depuis la feuille 10438505ff4808977, il faut donc - en l'état actuel - bel et bien que le bouton soit placé là.

En ce qui concerne tes acronymes qui varient, il y en a combien en tout ? Selon ta réponse, et selon que tu arrives à corriger le code tout seul ou non, on pourra voir comment adapter cela.

Amicalement.

Salut et merci pour ton suivi, c'est super apprécié !

Une fois que je place une image quelconque pour servir de bouton, le menu déroulant me permet d'y "accrocher" un script mais lequel ?

Est-ce bien la méthode pour faire fonctionner ce que tu as fait ? Comme tu le vois c'est pas ma zone de confort mais je suis très motivé à apprendre à faire fonctionner ce mécanisme. C'est une grosse solution de travail qui est en jeu pour moi !

il peut y avoir jusqu'à 50 acronymes, ils correspondent aux différents endroits où je travaille. J'en ai à ce jour 20 "d'actifs". Par contre, les photos auront toujours l'extension ".jpg" et la structure du nom du fichier sera toujours strictement de 8 caractères :

3 lettres, 1 underscore et 4 chiffres. Est-ce que ce serait mieux de cibler le nom de l'image par le tronc commun ".jpg" sachant cela ?

Merci beaucoup pour ton aide !

Salut,

Dans le fichier ci-joint, la recherche ne se fait plus que sur ‘’.jpg’’, ainsi les acronymes n’ont plus d’importance.

J’ai remarqué que dans tes exemples, à l’endroit où est inscrit la quantité, il y a 23 caractères (y compris les espaces) possibles avant le prochain ‘’$’’. J’ai modifié les exemples afin de voir ce que ça pouvait donner si tu avais une commande de 10, 100 ou 1000 photos, mais j’ai toujours laissé 23 caractères jusqu’au prochain ‘’$’’. Si ce n’est pas le cas dans la réalité, il faudra adapter le code.

Nouvellement, la feuille ‘’Récapitulatif’’ est activée en fin de macro. Est-ce ok ?

Une fois que je place une image quelconque pour servir de bouton, le menu déroulant me permet d'y "accrocher" un script mais lequel ?

Je comprends que tu veux remplacer mon bouton par une forme ou une image. Si c’est bien le cas, lorsque tu effectues un clic droit sur ta forme et tu choisis l’option ‘’Affecter une macro’’. Ma macro s’appelle ‘’Triage’’. Attention, ta forme doit être placée sur la feuille ‘’10438505ff4808977’’, autrement il faudra modifier le code en conséquence.

Apparemment tu ne sais pas comment aller voir cette macro. Tu peux ouvrir l’explorateur VBA en tapant Alt+F11. Et à nouveau Alt+F11 afin de revenir à Excel.

On peut avoir l'adresse de ton site ?

Bon dimanche.

Salut et merci beaucoup pour ta réponse !

J'ai compris ma confusion, l'importation de ton fichier dans Google Sheets supprimait le bouton et les macros. J'ai installé Excel pour ne plus être pris avec cette bêtise...

J'ai fait un essai avec un nouveau lot de 5 commandes. Ce que tu as fait est impressionnant !

Il me reste 2 difficultés, maintenant que je m'apprête à n'utiliser qu'Excel (pour y importer le CSV et appliquer ta macro), l'importation des données se fait différemment (Feuille "Importation Excel") Est-ce que la macro devrait plutôt s'appliquer sur ce nouvel affichage des données importée ? Ça semble mieux découpé ?

Aussi j'ai remarqué lors d'un test que les autres produits que les "Lots d'impressions" ne s'affichaient pas correctement. j'ai ajouté une feuille "Liste des produits" pour que tu puisses voir à quoi ressemble la dénomination des produits disponibles en ce moment.

J'aimerai t'en dire plus sur l'importance de ton aide ! Je suis jeune entrepreneur et photographe pour enfant en milieu scolaire. La plateforme en ligne que j'utilise pour montrer et vendre mes images est très efficace mais présente un seul gros défaut. Une fois rendu à commander les impressions de mes clients auprès de mon laboratoire, je dois ouvrir chaque courriel de commande un a un pour y copier-coller les données importantes dans une table. Cela entraîne des erreurs et beaucoup de temps perdu car en période de pointe, je peux recevoir jusqu'à 300 commandes par semaine à travers 20 écoles différentes.

Cette gestion est très lourde évidemment et m'empêche de développer mon projet et à le rendre plus viable. La solution que tu me proposes représente un changement capital dans mon flux de production et je te remercie encore beaucoup pour ton temps !

Il y a des chances que je penses à toi chaque semaine après ça !

Pour répondre à ta question, mon site internet est accessible ici :

Salut,

Il y a du bon et du moins bon dans ton dernier message

Bon, tout d’abord tu as l’air d’avoir un job sympa et j’aurais plaisir à continuer à t’aider un peu.

Mais j’ai fait tout un travail pour décortiquer des infos dans des cellules uniques et tu m’annonces que tu changes de système, ce qui rend environ 50 % de mon travail inutile

Alors il faut que tu te décides pour l’un ou pour l’autre système et que tu t’y tiennes. Je ne peux bien entendu que te conseiller de passer à Excel, ce qui simplifierait les choses.

En ce qui concerne les données récupérées dans tes courriels, tu as parfois des références en anglais, d’autres fois en français. J’ai un peu peur que tu aies modifié les données réellement reçues pour ma compréhension, mais c’est très gênant quant à savoir quelles informations on peut utiliser ou non. Je m’explique : Entre la feuille ‘’Importations Excel’’ et la feuille ‘’Liste des produits’’, tu as par exemple une fois le terme ‘’(Impressions)’’ qui revient chaque fois – et qu’on pourrait donc utiliser – alors que parfois tu n’as aucune information entre parenthèse ou le terme ‘’(Produit photo’’).

Alors, qu’est-ce qui revient chaque fois :

‘’4 x 6 Lot de 5 photos identiques (Impressions)’’,

‘’4 x 6 Lot de 5 photos identiques’’ ou

‘’4 x 6 Lot de 5 photos identiques (Produit photo)’’ ??

Ceci n’est bien entendu qu’un exemple, ne réponds pas à cette question.

En admettant que ces trois possibilités seraient …. possibles - donc peu exploitables - on pourrait par exemple voir si le mot ‘’Detail’’ pourrait être utilisé pour déterminer les lots ou éventuellement le nombre de lignes auprès la dénomination de l’image ou que sais-je encore.

Mais je ne veux plus partir dans telle ou telle direction pour tenter de trouver des solutions sans être certain des données à disposition.

Je te propose alors – après que tu t’es décidé entre Excel et Google Sheets – que tu m’envoies des données brutes, sans aucune modification de ta part et si possible correspondant à deux ou trois commandes différentes. Si tu places ces commandes les unes à la suite des autres sur la feuille Excel et qu’il faut les lire ensemble, fais-le ainsi et précise-le-moi. Si tu places chaque commande sur une feuille Excel différentes, précise-le-moi aussi et éventuellement que l’on pourrait lire plusieurs feuilles en même temps.

Si tu as des données confidentielles sur ces feuilles, envoie-moi plutôt des données par courriel privé plutôt que de tenter d’anonymiser ces données, ce qui risque de fausser leur exactitude.

De même, je serais éventuellement intéressé à recevoir des copies de 2 ou 3 courriels de commandes par lesquels je pourrais étudier la possibilité d’aller lire ces courriels depuis Excel au lieu de les copier-coller (mais je te laisse peu d’espoir de ce côté-là). A tout hasard, dis-moi quand même si tu travailles avec la messagerie Outlook.

Je n’aurais pas toujours autant de temps à te consacrer et tu risques de devoir attendre quelques jours pour ma prochaine réponse.

Amicalement.

Merci beaucoup pour ta réponse !

Il a été très difficile d'anticiper que Google Sheets ne me permette pas de voir et utiliser ta macro, c'est pour ça que j'ai migré vers Excel. Cela me rend inconfortable, ta générosité est très précieuse et je suis le premier à détester le travail "pour rien".

Je suis d'accord avec toi, le meilleurs moyen de ne pas zigzaguer est de pouvoir partager quelques courriels de commandes afin de ne pas altérer les données. Tu fais allusion à te faire parvenir des documents non-altéré par courriel privé, comment puis-je te rejoindre ? Si tu ne souhaite pas donner ton courriel ici, tu peux me contacter via le formulaire de mon site internet que je t'ai communiqué précédemment.

Il y a quelques variables dans les données qui sont uniformes : Name, Qty et Detail, car c'est toujours après ces trois champs que l'information vitale se trouve.

Pour la dénomination des fichiers, c'est très difficile de couler dans le marbre leurs dénominations car c'est directement relié à la grille de prix et au nom des produits sur la plateforme en ligne. Cela évolue en fonction des ventes, certains produits sont retirés, d'autres sont remanié, il y a des nouveautés aussi. Je crois difficile de se baser sur une liste précise de nom de produit...

Je pourrais te donner un accès test si tu es intéressé à voir la partie "client" et même faire des commandes "gratuites", je pourrais te transférer ces courriels de commande.

Saches que je suis très reconnaissant du soutient que tu m'apportes même si je n'ai aucune idée de comment je pourrais te remercier !

Salut,

Désolé pour le temps de réponse, mais là je suis assez pris en privé et au boulot. Il y a des chances que j'ai plus de temps dimanche.

A droite de nos messages, sous nos données personnelles, tu peux cliquer sur la petite icone à côté de ‘’Contact’’ et tu peux choisir entre envoyer un message privé (sur le Forum) ou un message par courriel. Dans ce dernier cas, je reçois ton adresse électronique et si je te réponds, tu reçois la mienne. Si ça ne va pas ainsi, redis-moi et je passe par le formulaire de ton site. Si tu m’écris un courriel, je te le confirmerai assez rapidement, même si je n’ai pas le temps de m’en occuper de suite.

Pour la dénomination des fichiers, ne pourrais-tu pas choisir par exemple que leur nom commence toujours par une même dénomination très distincte, telle que Zzz-Cadre 18/24 ou Zzz-Agrandissement 200/340 cm (wow, jolie commande !) ou Zzz-36 photos format passeport ? Mais ne te tracasse pas à ce sujet ; si tu trouves que ça présente la moindre complication, il semble que l’on peut se débrouiller autrement.

Je t’ai demandé de choisir définitivement entre deux systèmes – Google Sheets et Excel – juste pour être bien certain que tu ne changeras pas encore trois fois, mais sinon je suis bien conscient que si tu es parti sur une fausse base, tu veuilles en changer.

Dans un premier temps, je ne suis intéressé que par 2 ou trois commandes réelles, si possibles bien représentatives des diverses variantes possibles ; si vraiment je devais avoir accès à ton site – ce qui me semble peu probable – je te le redirai.

Cordialement.

Salut,

Je me réfère à nos échanges en privé, mais comme il n’y a rien de confidentiel, je reviens sur le Forum.

Je t’ai dit que j’allais chercher une solution pour prendre les informations directement dans les courriels, mais ça me parait finalement impossible.

Cependant, on pourrait tenter d’automatiser le transfert du fichier .csv au fichier Excel, mais je ne m’en suis pas encore occupé pour l’instant. J’ai donc passé manuellement une copie de la feuille .cvs dans Excel. A me rappeler par la suite si j’oublie de t’en reparler.

Basé sur les premières données visibles dans la feuille ‘’10438505a01507217’’, j’ai préparé une macro qui semble bien fonctionner jusqu’à un certain point.

Comme tu peux le constater sur la feuille ‘’Récapitulatif’’ tel que je te l’envoie – ou tel qu’elle se présenterait si tu relançais la macro, puisqu’à chaque fois les anciennes données sont effacées – ça a bien fonctionné jusqu’à la ligne 16, soit jusqu’à la photo à la ligne 249 de la feuille de données. Ceci car jusque-là, j’avais basé ma macro sur le fait que la quantité était toujours inscrite 4 lignes après la référence de la photo et le lot 7 lignes après.

Puis cette structure change et il faudra trouver une autre solution pour la suite. Dès la photo de la ligne 284, la quantité est placée 2 lignes plus loin et le lot 4 lignes plus loin.

Avant que je continue à modifier ce code, peux-tu me dire si tu penses qu’il y a encore d’autres structures possibles ?

Et si oui, est-ce que tu penses qu’il y a toujours - à la suite de la référence de la photo – la désignation ‘’Qty’’ (avec ou sans ligne vide en dessous) et la désignation ‘’Detail’’ (avec ou sans ligne vide en dessous) ?

Je pense que l’on est proche de la réalisation finale, ça ne semble être qu’une question de réglage.

Cordialement.

Bonjour !

Ce que tu as fait est vraiment top ! Je ne comprend vraiment pas pourquoi la structure change ainsi, peut-être est-ce le pluggin de gmail pour créer le CSV à partir des courriels qui fait une "interprétation". Je ne suis pas spécialiste mais j'ai peut être une idée. Si au tout début de la macro, on pouvait supprimer toutes les lignes vides, nous ne serions plus embêté que la structure fluctue avec 0, 1 ou 2 lignes vides autour des champs clé qui nous servent de référence pour récupérer l'information voulue "Name", "Qty", "Detail". Cela mettrait l'information désirée toujours sur la ligne suivante de ces champs spéciaux. Qu'en penses-tu ?

Est-ce envisageable selon toi, que la macro écrive quelque chose de spécial quand une donnée est repérée ?

Exemple : Écrire : "24 x 36" au lieu de "24 x 36 1 agrandissement 24x36 (Impressions)". Je vois arriver la nécessité de normaliser l'information à envoyer au laboratoire. Je pourrai fournir la liste d'équivalence.

Merci d'avance pour ton aide ! Je te souhaite une super journée !

Salut Stéphane,

Si tu me fournis une liste d'équivalence, je peux bien étudier le problème ; il doit bien y avoir une solution

Mais je ne veux pas m'y mettre tant que l'autre partie n'est pas claire et de toute façon tu dois alors me fournir cette liste d'équivalence (sous la forme Excel, bien entendu).

Tu n’as pas vraiment répondu à ma question ci-dessous :

Avant que je continue à modifier ce code, peux-tu me dire si tu penses qu’il y a encore d’autres structures possibles ?

Et si oui, est-ce que tu penses qu’il y a toujours - à la suite de la référence de la photo – la désignation ‘’Qty’’ (avec ou sans ligne vide en dessous) et la désignation ‘’Detail’’ (avec ou sans ligne vide en dessous) ?

Réponds donc également à cela, mais effectivement que l’idée de supprimer les lignes vides en serait une bonne parmi d’autres.

Dans l’attente de ces deux informations (Réponse à ma question de l'autre jour et liste d’équivalence).

Bonnes salutations.

Rechercher des sujets similaires à "recherche valeur extraction donnees"