Création de macro VBA - Suivi de prestataires

Bonjour

« Elle écrase toutes mes données (Col P à AB) si je trie mon tableau dans l’onglet « Facturation » par mois puis par Nom Prénom et que j’appuie sur « Facturation » pour actualiser. »

Le traitement Facturation ne touche que les colonnes A à O onglet « Facturation » en aucun cas les colonnes après à partir de P

ton souci est ailleurs mais pas au niveau de cette macro

Donnes moi un exemple de données avant et après son exécution qui disparaissent et de fournir le fichier en correspondance
Pour ta gouverne tes colonnes de P à AB pour certaines (colorées en bleu) sont alimentées par des formules voir déjà les concernant de ce côté

Tiens moi informé

« si je trie mon tableau dans l’onglet « Facturation » par mois puis par Nom Prénom et que j’appuie sur « Facturation » pour actualiser. »

Attention la procédure « Facturation » réinitialise intégralement l’onglet « Facturation » des données de ses colonnes A à O donc de perdre inévitablement le bénéfice de tout tri pour ces colonnes
Donc je pense qu’il vaudrait mieux réaliser ce traitement avant celui des tris

essaies plutôt dans cet ordre Traitement « Facturation » puis tris

Par exemple, j’ai forcément inséré des données pour toutes les lignes de l’onglet « Facturation » entre 01/01/2021 et 31/07/2021. Mais pour une meilleure lecture de cet onglet, j’ai voulu trier par mois puis par nom prénom.
Admettons, j’ai un nouveau prestataire qui entre en aout soit du 02/08 au 31/08/2021. J’ajoute donc une ligne dans l’onglet « Etat contrats » puis je clique sur « Facturation » pour avoir ce contrat dans l’onglet « Facturation ». Sauf qu’en faisant cela, ça rebat toutes les lignes dans l’ordre de l’onglet « Etat contrats » et donc les informations insérées dans les colonnes de P à AB de l’onglet facturation ne correspondent plus à la ligne du salarié en question. Il est tout à fait normal dans mes colonnes bleu, d’avoir des formules déjà insérées, mais ce sont les données que moi j’insère ensuite qui ne fonctionnent plus.

Donc il y a bien un problème, il ne faut pas que les lignes déjà existantes soient rabattues. C’est pour cette raison que je vous ai ajouté l’ancien code de l’ancien fichier. Car ce traitement n’effaçait pas tout avant donc il doit bien y avoir une solution ?

Merci pour votre aide,

j’ai toujours dit que le traitement facturation réinitialisé l’onglet « Facturation » pour ses colonnes A à O
Cette manière de procédé offre l’avantage de repartir sur du neuf sur la base de l’onglet source « Etat contrats » et donc de s’affranchir de l’existant à réalimenter donc à rechercher ou à supprimer
Plus simple de partir sur du neuf que de mettre à jour de l’existant
Pourquoi ne pas réaliser dans l’ordre que je t’ai proposé :
Traitement « Facturation » puis tri puis tes données que tu dois insérer

Que tu fasses dans cet ordre ou un autre tout est à faire donc pas de contrainte supplémentaire quelque soit cet ordonnancement d’actions

Sinon possibilité de rajouter onglet « Etat contrats » les colonnes que tu alimentes à la main (alimentées par formule) que le traitement « Facturation » peux faire suivre sur les enregistrements adaptés dans les colonnes appropriées de P à AB de l’onglet "Facturation

Dernière possibilité la récupération de tes saisies dans un onglet intermédiaire pour les remettre sur les bonnes lignes de l’onglet « Facturation »

Les tris devront être de toute façon la dernière action à réaliser

A toi de voir l’option que tu préfères

Cependant, ce n’est pas mon besoin « de repartir de sur du neuf ». Moi je veux garder l’historique de ce que je renseigne sinon aucune valeur ajoutée à mon travail si il faut que je reprenne l’ensemble de mes données

Parce que votre proposition ne fonctionne pas sur la base de l’exemple donné. Je clique sur le bouton Facturation, ok pour le premier traitement, on est d’accord.
Par contre demain, j’ajoute un nouveau contrat dans « Etats contrats », et clique à nouveau sur « Facturation » alors ça rebat toutes les lignes et donc le tri qui va avec. donc ça n’historise pas sur les bonnes lignes mes informations déjà renseignées.

Avez-vous regarder le code que j’ai transmis auparavant ? Car il traitait ce problème.

Merci d’avance pour votre aide.

« Cependant, ce n’est pas mon besoin « de repartir de sur du neuf ». Moi je veux garder l’historique de ce que je renseigne sinon aucune valeur ajoutée à mon travail si il faut que je reprenne l’ensemble de mes données »

Je t’ai proposé que le traitement historise tes saisies puis reparte sur du neuf pour les récupérer ensuite sur les enregistrement appropriés

« Par contre demain, j’ajoute un nouveau contrat dans « Etats contrats », et clique à nouveau sur « Facturation » alors ça rebat toutes les lignes et donc le tri qui va avec. donc ça n’historise pas sur les bonnes lignes mes informations déjà renseignées. »

Je peux ne considérer que les ajouts et ignorer les existants même si il ont été modifiés ou supprimés si c’est ce que tu souhaites

"Avez-vous regarder le code que j’ai transmis auparavant ? Car il traitait ce problème.

Ecoutes si il te conviens gardes le pourquoi devrais je m’investir alors que tu as ce qu’il te faut avec ton ancien code inutile que je perde mon temps

A toi de voir entre mes propositions et ce que tu as déjà de disponibles ce qui te convient le mieux

Ci-joint tu trouveras une version avec la récupération de ta saisie dans un nouvel onglet « Données saisies » en début de traitement « Facturation » et la restitution de celle-ci sur les enregistrements appropriés en fin onglet « Facturation » colonne P à AB

Je ne sais pas si cela te satisfera
A essayer

PRESTA_2021-9.xlsm (89,3 Ko)

Bonjour,

Merci de votre retour.
C’était juste une aide qui proposait une solution au problème, le fichier a évolué. Dans tous les cas, vous proposition à l’air de bien fonctionner et résout le problème.

Petite question : est-il possible de masquer la feuille « Données saisies » sans que cela pose problème au traitement ?

Merci

Bonjour
Enfin du positif c est rassurant
Ce traitement utilise le même principe la reinitialisation totale de l onglet « Facturation » mais pour ne pas perdre toutes les saisies manuelles réalisées à partir de la colonne P les récupère en préambule dans l onglet « Données saisies » pour les réintégrer à la fin sur les enregistrements appropriés
Cet onglet peut tout à fait être masqué sans l alterer
Je peux te rajouter une autre procédure pour réaliser non pas une reinitialisation totale de cet onglet mais des ajouts au gré des saisies onglet « Etats contrats »
Dans cette option il faut déterminer ceux à traiter (dernière ligne lignes sélectionnées celles avec une certaine couleur ou cochées etc …)
A toi de voir et me dire
Dernière précision le traitement actuel intègre toutes les saisies mais ne réalise que la mise en forme des colonnes À à O pas les suivantes jusqu à AB
Voir si c est à rajouter ou si celle-ci sera réalisée manuellement

Merci pour toutes tes réponses

Ce serait top, plutôt que de tout réinitialiser (car à la fin de l’année ça peut représenter du monde).
On peut dire qu’il faut : sélectionner la ou les lignes « Etats contrat » à ajouter dans Facturation.

Si c’est possible d’appliquer la mise en forme jusqu’au bout des colonnes, ce serait l’idéal également.

Merci d’avance !!

« Ce serait top, plutôt que de tout réinitialiser (car à la fin de l’année ça peut représenter du monde).
On peut dire qu’il faut : sélectionner la ou les lignes « Etats contrat » à ajouter dans Facturation. »

Doit on vérifier si le ou les enregistrements à traiter ne sont pas déjà présent avec dans cette alternative la comparaison des dates fin de contrate pour une mise à jour éventuelle des données si celle-ci était supérieur ?

Merci de me dire

Pour bien comprendre votre question, je prends un exemple :

  • j’ai un presta 1 qui a une date de fin au 31/03/2021 auquel on vient modifier la date de fin au 31/09/2021 ?
    Si on peut faire, alors pourquoi pas effectuer une vérification afin d’ajouter les lignes correspondantes dans l’onglet « Facturation » en conséquence.

Ci-joint nouvelle version

Le traitement « Facturation » gère les données et les formats des colonnes de A à AB
Il réinitialise cette onglet en récupérant dans l’onglet « Données saisies » les données des colonnes P à AB déjà saisies puis sur la base des enregistrements de l’onglet « Etat contrats » réinjecte toutes les lignes en récupérant pour chacune d’elle leur paramétrage récupéré

Seule la ligne 2 de l’onglet « Facturation » doit posséder le format et les formules de ces colonnes que le traitement utilise pour chaque ligne suivante qu’il doit alimenter pour les réaliser à l’identique

Un troisième bouton « Facturation ajout » a été mis en place onglet « Etat contrats » pour intégrer dans l’onglet « Facturation » la ligne sélectionnée dans celui-ci
Une sélection doit être réalisée (ligne entière ou une cellule de celle-ci) avant d’activer ce bouton

Après validation d’un message donnant le numéro de la ligne qui va être traitée celle-ci sera ajoutée en fin des données de l’onglet « Facturation » autant de fois en fonction des valeurs 1 présentes colonne P à AA avec le format et les formules de la ligne 2 de ce même onglet sauf si l’enregistrement est déjà présent dans cette alternative une comparaison des dates de fin de contrat remettra les valeurs de celui-ci de la colonne A à O sur sa ligne si sa date est supérieur

Cette nouvelle procédure ne traite qu’une ligne à la fois

Pour plusieurs lignes ne l’exécuter que l’une après l’autre

Fais des essais et dis moi

PRESTA_2021-10.xlsm (96,4 Ko)

Bonjour,
Je viens de tester avec mes bases, j’ai l’impression que tout fonctionne et ça me convient parfaitement/
Je vais continuer de faire quelques tests ces jours-ci et vous confirme cela.
En vous remerciant de votre aide.

Bonjour
Merci pour cette réponse
À ta disposition pour tout besoin
Fais moi un retour concernant tes essais
Au plaisir de te lire

Ce sujet a été automatiquement fermé après 30 jours. Aucune réponse n’est permise dorénavant.