Copie de données dans un autre classeur dans l'onglet du mois en cours

Bonjour à tous.

Pouvez-vous m’aider s’il vous plaît ? J’ai trouvé pas mal d’informations sur le net, mais lorsque j’assemble les codes, j’ai à chaque fois des erreurs et n’arrive pas à les résoudre.

Le fichier « FICHE INTERVENTION.xlsm » va :

  1. Créer un fichier individuel avec le numéro et le nom de la fiche dans un dossier « TRAVAUX 2021 »
  2. Complète le tableau « HEURES VENDUES.xlsm » avec informations copiées.

Problème que je rencontre :

  1. Sur le fichier « Heures vendues 2021.xlms », il y a plusieurs onglets pour chaque mois de l’année. J’aimerais qu’il copie les informations du fichier, suivant le mois en cours et non pas par défaut dans la feuille « JAN », par exemple aujourd’hui, les enregistrements se feraient automatiquement sur l’onglet « MAI ».

  2. Que le prochain enregistrement passe automatiquement à la ligne vide suivante, pour éviter qu’il écrase le précédent enregistrement.

  3. Enfin, lorsque je reprends la fiche enregistrée dans l’exemple : « 05-0001-DUPONT.xlsm » pour y compléter les travaux effectués et que les heures changent, je valide avec « Retour ligne verte ». Il faudrait qu’il recherche dans le tableau « Heures vendues 2021.xlsm », la ligne « 05-0001-DUPONT» pour la remplacer avec les nouvelles informations.

Je remercie d’avance toutes les personnes qui pourraient m’aiguiller ou m’apporter de l’aide.
FICHE INTERVENTION.xlsm (52,1 Ko) HEURES VENDUES 2021.xlsm (264,0 Ko)

Bonjour

Ci-joint ton fichier « FICHE INTERVENTION.xlsm » adapté

J’ai créé un onglet « Paramètres » dans lequel en cellule A2 doit figurer le nom de ton fichier cible à alimenter
Celui-ci doit être ouvert avant l’exécution du traitement
Un message sera donné si ce n’était pas le cas avec arrêt du traitement

Onglet « Données » le traitement pour l’instant ne recopie que la ligne 3
Si d’autres lignes qui suivent doivent pouvoir être recopiées aussi il faudrait nettoyer les données présentes qui n’ont aucun lien avec le fichier à enrichir

Merci de me dire

Le bouton « Recopie » scrute dans le fichier cible onglet du mois en cours la présence ou non de la référence à traiter colonne A « N° INTERV. »
Détermine sa ligne ou à défaut la première ligne libre et recopie toutes les données pour l’instant de la ligne 3 colonne A à colonne L sur celle-ci

Cliques sur ce bouton puis regardes le résultat dans le fichier cible onglet du mois en cours

Testes et dis moi

FICHE INTERVENTION.xlsm (58,4 Ko)

1 J'aime

Bonjour FFO !

Un grand merci pour ta solution, cela fonctionne parfaitement !!!

Toutes mes excuses pour le délai de réponse, mais ton mail est tombé dans ma boîte spams ! Et j’étais sur un autre tableau…

  • la copie des informations se fait bien dans l’onglet du mois en cours, j’ai changé la date système et la copie ne se faisait pas parce que les noms des onglets correspondant au mois de l’année étaient raccourcis ex. JAN au lieu de JANVIER, mais dès qu’ils sont nommés en entier cela fonctionne !!!

  • Si je mets à jour les heures de la « Fiche intervention » et que je valide, les heures sont également mises à jour dans le tableau, il ne créer pas un nouvel enregistrement si celui-ci est déjà existant ça c’est vraiment TOP !!!

Seul souci, c’est qu’il me copie les infos à la fin du tableau sur la ligne 250 !?* Ce que je ne comprends pas c’est que le premier tableau que je t’avais fourni ce problème était inexistant. Aurais-tu une idée ?

Puis-je encore te solliciter pour une autre chose ? Tu trouveras ci-joint les fichiers qui ont évolués.

Fichier « Fiche intervention » Onglet « Données ». Le numéro d’intervention est généré automatique, suivant le mois en cours ex. 01 pour JANVIER, 02 pour FÉVRIER, … et un numéro d’ordre, par défaut -0001, si celui-ci n’est pas connu, sinon on rajoute 1 au dernier trouvé.

Ma formule fonctionne, cependant, je n’ai pas trouvé comment n’en faire qu’une seule étant variable suivant le mois en cours. Tu trouveras le complément d’information dans le fichier.

Je te remercie une nouvelle fois pour ton aide.

FICHE INTERVENTION.xlsm (89,7 Ko)
HEURES VENDUES 2021.xlsm (388,5 Ko)

Bonsoir

Effectivement je t’avais complètement oublié un tel délai pour répondre mes neurones étaient déjà passés à autre chose
Ravi de ces bonnes nouvelles

Pour ton problème de recopie tu as certainement rajouté dans le fichier cible un tableau défini dans l’onglet
J’utilise une ligne d’instruction qui détermine la première ligne vide à partir du bas de la colonne C jusqu’à la première cellule non vide en remontant
Cela fonctionne parfaitement sauf si un tableau est paramétré ce qui a pour inconvénient pour ce traitement de fausser cette détection qui détermine la première ligne après la dernière de ce tableau
car celles de celui-ci sont considéré comme non libres
D’où ta problématique
J’ai changé de ligne de code pour arriver j’espère à la bonne ligne à utiliser
Seul impératif que toutes les cellules colonne C en amont de cette ligne soient toutes avec une donnée donc aucune soient vides

J’espère que cette condition est effective et sera stable

Ci-joint donc ton fichier adapté ainsi

Testes et dis moi

La prochaine fois pour plus de facilité transmet moi un fichier qui soit exploitable directement en affichage normal (pas de plein écran avec les entêtes de lignes et colonnes affichés) car c’est une perte de temps que de devoir tout remettre en place pour pouvoir intervenir

Pour ta toute dernière demande je regarde cela demain soir voir après demain car je suis en déplacement toute la journée
Je te répond dés que possible

Testes déjà la correction concernant la ligne de recopie

Fais moi un retour

FICHE INTERVENTION.xlsm (89,5 Ko)

1 J'aime

Bonjour FFO,

Ouaaaa, ça marche super !!! Je suis déjà trop content de ce que tu as fait.
Je te remercie mille fois !

Pour mon deuxième problème, ça ira pour moi quand tu pourras, je suis déjà tellement content que tu puisses m’aider…

OK pour la mise en affichage normal et désolé, je ne savais pas… Les utilisateurs finaux, ne sont pas doués en informatique, donc j’ai pour mission que cela soit le plus simple possible avec le moins de boutons et éléments perturbants qu’il est possible pour ne pas les braquer !

Alors à plus tard…

Bonjour

Merci pour ce retour

Pour ta formule sous tes explications en cellule E21 je t’ai mis celle à utiliser en remplacement du MOIS en cours
Pour JUIN dans la formule globale remplace ce nom dans toute celle-ci par ma formule en cellule E21 qui déjà te donne cette donnée en majuscule

Je ne peux le réaliser à ta place car ta formule fais appel à un chemin que je n’ai pas et donc à mon intervention dans cet esprit tombe en erreur de ce fait

Je te laisse oeuvrer à ma place

Tu peux aussi laisser ma formule en cellule E21 ou la rapporter dans une autre cellule de ton choix et faire appel à elle dans ta formule

Je peux aussi intégrer cette option dans le traitement

A toi de voir

Ton fichier ci-joint

FICHE INTERVENTION.xlsm (89,7 Ko)

1 J'aime

Excuse-moi FFO, je me suis mal exprimé, cela ne fonctionne pas chez moi ou je m’y prends mal…

Dans l’onglet «Données » la formule en D7 (06-0010) :

=SI(ESTNA(RECHERCHEV(« Z^Z »;'G:[HEURES VENDUES 2021.xlsm] JUIN '!$C$7:$C$250;1));TEXTE(AUJOURDHUI();« MM »)&"-0001";TEXTE(AUJOURDHUI();« MM »)&"-"&TEXTE(STXT(RECHERCHEV(« Z^Z »;'G:[HEURES VENDUES 2021.xlsm] JUIN '!$C$7:$C$250;1);4;4)+1;« 0000 »))

JUIN correspond aujourd’hui au mois en cours, mais le mois prochain il changera automatiquement en JUILLET, c’est cette info qui doit-être variable

Lorsque je remplace JUIN par E21 , il m’ouvre une fenêtre en me demandant de choisir la feuille JUIN du fichier « HEURES VENDUES 2021 » et remplace E21 par JUIN….,

Lorsque je remplace directement JUIN par la formule et non E21, j’ai un message d’erreur.

Le problème est que la variable se trouve à l’intérieur de la valeur du fichier cible.

Ce que je souhaite faire, c’est que la formule aille chercher automatiquement le dernier enregistrement de l’onglet du mois en cours dans le fichier « HEURES VENDUES 2021 »

Merci pour ton aide.

Pas simple ton affaire !!!
Je te propose cette solution ci-jointe

J’ai rajouté un onglet « Onglets » dans lequel colonne A j’ai listé en majuscule tous les mois de l’année et en colonne B pour chacun la fameuse formule avec le mois en correspondance
Puis onglet « Données » en cellule E14 une formule qui en fonction du mois en majuscule du jour va rechercher la bonne ligne colonne B onglet « Onglets » pour récupérer la valeur correspondant à celui-ci

Ainsi de contourner le problème de l’onglet mois dans la formule qui calcule le numéro d’intervention

Plus besoin de le mettre à jour en fonction du mois en cours il suffit de la récupérer sur la bonne ligne dans l’onglet « Onglets » en colonne B

J’espère que cela te convient

Regardes et dis moi

FICHE INTERVENTION.xlsm (91,6 Ko)

Re FFO,

Ouuuu, alors ça c’est tordu mais bougrement intelligent !!! :woozy_face:

La gymnastique du cerveau, je ne te dis pas, franchement, je ne pense pas que j’y serais parvenu sans ton aide, je ne voyais absolument pas comment contourner le problème…

J’ai changé la date système pour voir s’il prenait bien en compte l’information et ça marche trop bien !!!

C’est vrai que ce n’était pas simple, en même temps si ça l’était, cela ne serait pas si drôle… Et quelle satisfaction du dois ressentir… Trop fort.

Alors encore encore une fois mille mercis pour le temps que tu y as passé ! Ta proposition me convient parfaitement !

À bientôt pour d’autres problèmes tordus ?! :wink:

Merci pour ta réponse
J’espère que tout ira bien avec cette solution
N’hésites pas pour toute difficulté
N’oublies pas de valider ma réponse un plus appréciable
Au plaisir de dialoguer à nouveau avec toi
A bientôt peut être

1 J'aime

Re FFO,

Désolé, il n’aura pas fallu attendre longtemps avant que je revienne vers toi !

Juste un petit souci, sur le fichier « Fiche intervention » ton bouton « Recopie » présent sur la feuille « Données » fonctionne très bien.

Cependant, lorsque j’attribue ta macro à mes boutons « Valider », sur les deux feuilles « Fabrication et Sablage peinture » cela ne fonctionne pas.

Pourrais-tu à nouveau m’aider ?

Merci beaucoup.
Bonne soirée.

Bonjour

« Cependant, lorsque j’attribue ta macro à mes boutons « Valider », sur les deux feuilles « Fabrication et Sablage peinture » cela ne fonctionne pas. »

Ma macro à été conçu pour fonctionner avec la feuille de mon bouton Recopie active à l écran
Si tu veux l exécuter à partir d une autre feuille cela ne fonctionnera pas
Pourquoi à partir d un autre onglet et non pas celui de mon bouton ?
Que cherches tu à faire ?

Merci de m eclairer sur tes intentions quant l utilisation d une autre feuille avec mon traitement

1 J'aime

Je viens de regarder ton fichier
Mon bouton « Recopie » intègre dans le fichier « HEURES VENDUES 2021.xlsm » la ligne ci-après en jaune de l’onglet « Données » :

Lorsque tu actives celle-ci à partir de l’onglet « SABLAGE-PEINTURE » ou « FABRICATION » elle recopie la même ligne même cellules mais de l’onglet utilisé :

Autant dire que ces données n’on rien à voir avec celles à intégrer dans le fichier cible

J’ai modifié le code pour utiliser systématiquement les cellules ligne 3 de l’onglet « Données » quelque soit celui à partir duquel il est activé

Ce n’était pas là non plus une de tes exigences initiales
Difficile donc sans le savoir de prendre en compte cet impératif

J’ai testé cela fonctionne

Essaies de ton côté et dis moi
FICHE INTERVENTION.xlsm (93,8 Ko)

1 J'aime

Bonjour FFO,

Effectivement, je m’en suis aperçu que lorsque j’ai voulu affecter ta macro à mon bouton, pour moi, normalement, je pouvais le faire, je me suis trompé et je ne te l’avais pas précisé au départ, désolé.

Encore une fois cela fonctionne parfaitement. Merci beaucoup.
Bon dimanche !

Et oui d où l intérêt de bien cerner tous ses besoins et de bien les exposer dans les moindre detailles sinon les déconvenues en sont à la clé
Que cela serve d expérience pour les prochaines aventures
Au plaisir de te retrouver

Bonjour FFO,

Désolé de faire encore appel à toi, mais suite à la dernière modification, il y a un petit problème qui est apparu à l’utilisation, qui n’avait pas été détecté en amont.

Pour mémoire :

Les fichiers Fiches d’Intervention « 06-0104 DUPONT et 06-0107 DURANT », ont été créés sur le mois de Juin. L’enregistrement des informations a été réalisé par le bouton « Enregistrement » (à droit du tableau)

Les données ont été copiées dans le fichier « HEURES VENDUES 2021 », onglet du mois de Juin.

Jusque là tout va très bien.

C’est deux fichiers ont été repris sur le mois de Juillet pour effectuer la mise à jour des heures.

La macro rechercher l’enregistrement sur le mois en cours, donc sur juillet. Comme ils ont été créés sur juin, elle ne le trouve pas, donc créer un nouvel enregistrement.

Problème :

On se retrouve avec un doublon sur juin et juillet, qui fausse le cumul mensuel et annuel.

Le numéro de chaque fiche d’intervention est généré automatiquement, et « fixé » afin qu’il ne change plus à l’ouverture.

Or, lorsque l’on créer une nouvelle fiche d’intervention, elle regarde dans le tableau « Heures vendues » du mois en cours le dernier numéro créé.

Comme les deux enregistrements du mois de juin sont également copiés sur juillet, la chronologie des numéros est donc faussée.

Je pense que la solution se trouve sur la macro qui recherche l’enregistrement sur la feuille du mois en cours et non le classeur.

Qu’en penses-tu ?

Pourrais-tu m’aider dans la modification de la macro ?
(Ci-joint les fichiers en question)
HEURES VENDUES 2021.xlsm (388,1 Ko)
06-0104-DUPONT.xlsm (78,9 Ko)

Je t’en remercie.

Bon après-midi.

Cordialement.

Bonjour

Une petite correction dans ce fichier ci-joint

Cela devrait le faire

Testes et dis moi

FICHE INTERVENTION.xlsm (91,6 Ko)

1 J'aime

Re bonjour FFO,

Je te remercie pour ta réponse.

Cela fonctionne très bien avec ton bouton « Recopie » sur l’onglet « Données », mais ta modification du 06/06, n’a pas été reprise dans le fichier que tu as utilisé, donc elle ne fonctionne pas avec mon bouton sur l’onglet « Fabrication ».

J’ai essayé de reproduire tes modifs, en vain… Ce qui est étrange, c’est que normalement, en attribuant ta macro à mon bouton cela devrait fonctionner…

Bonne soirée.

Bonjour

Il aurait été judicieux de me fournir le fichier avec les macros dernière version afin que je le corrige au vue de tes dernières anomalies exprimées
De plus j’ai fais avec celui en ma possession après une bonne recherche parmi tous les dossiers capitalisés du forum car tu ne m’a pas donné beaucoup d’éléments pour rapidement le retrouver
Depuis le mois de juin nombreux cas traités je suis très loin du tien et avec les maigres renseignements que tu m’as fourni de me replonger dans ton univers
Pas simple
La prochaine fois donnes plus de détails quant à son fonctionnement et les boutons incriminés ce sera plus facile pour moi et surtout un exemplaire à faire évoluer

Donc ton fichier ci-joint (ma dernière version faute d’en avoir une autre) avec l’adaptation des boutons « Valider » onglet « FABRICATION » « SABLAGE-PEINTURE » « Données » pour rechercher dans tous les onglets du fichier cible la référence à traiter
Attention de ne pas avoir une ou plusieurs de celles-ci présentes dans plusieurs mois
Un ménage s’impose
J’ai retrouvé dans ton fichier que tu m’as transmis « HEURES VENDUES 2021.xlsm » onglet « JANVIER » en cellule C4 la référence « 06-0010 » en plus de l’onglet où normalement il doit être « JUIN » :

La référence dans la barre de formule pour la cellule C4

Ce qui m’a valu des sueurs froides pour faire fonctionner le traitement « Recopie » pour cette référence

Donc un bon coup de plumeau colonne C sur tous les onglets « Mois » évitera un tel type de déconvenue

Le pb pour cette référence fut d’autant plus ardu à résoudre que cet intru de l’onglet « JANVIER » se cachait derrière une image intégrée par tes soins dans les cellules fusionnées ligne 2 à 5 colonne C

Donc bien scruter à la loupe ces lignes fusionnées avec image

La nouvelle version ci-après à tester

Fais moi un retour

FICHE INTERVENTION.xlsm (90,8 Ko)

1 J'aime

Bonjour FFO,

Je ne mets pas en doute ce que tu me dis. Apparemment, il s’agit là d’un autre problème de fichier. Je suis désolé, mais je t’assure joint dans mon mail de hier les derniers contenant tes dernières modifications. J’essaie d’être le plus précis et le plus explicite dans mes explications.

« Il aurait été judicieux de me fournir le fichier avec les macros dernière version afin que je le corrige au vue de tes dernières anomalies exprimées »

Le dernier fichier « 06-0104-DUPONT.xlsm » rassemblait les dernières modifications sans les macros de full screen comme tu me l’avais demandé. Le fichier des « HEURES VENDUES 2021 » montrait précisément le problème rencontré.

J’ai retrouvé dans ton fichier que tu m’as transmis « HEURES VENDUES 2021.xlsm » onglet « JANVIER » en cellule C4 la référence « 06-0010 » en plus de l’onglet où normalement il doit être « JUIN »

Je viens de reprendre le fichier « HEURES VENDUES 2021.xlsm » que j’avais joint à mon mail de hier et je ne trouve pas les problèmes que tu m’indiques ?! Pour moi la référence « 06-0010 » n’est présente que sur le mois de juin et rien dans le reste du classeur. Et je n’ai aucune cellule fusionnée ou une référence cachée derrière une image…

En tout cas comme d’habitude cela fonctionne parfaitement avec mes boutons. Je t’en remercie !

Tu m’aides, tu m’aides encore, malgré les difficultés, j’aimerais te rendre la pareille, est-il possible de communiquer avec toi en messagerie privée ?

Bonne journée.