MACRO reclassement de ligne

Salut à tous !!

En ce temps de confinement, l'heure est à la prudence, il ne faut pas sortir et geeker sur excel

J'aimerai faire une macro qui a pour but de copier une ligne, déplacer la ligne copier et la copie en fin de sa zone (groupée par numéro de compte), inverser le débit et le crédit, et dupliquer la ligne copier dans un autre compte

Bref, c'est un reclassement !

Pour mieux comprendre je vous ai mis un exemple de ce que je souhaite obtenir, en feuille 1, la feuille d'origine et la feuille 2, la feuille après exécution de la macro,

Merci à vous !!!

5test.xlsm (190.91 Ko)

Bonsoir,

En effet, tous les sujets vont avancer vite en cette période où les contributeurs sont bien disponibles !

Ci-joint une proposition à tester.

Principe :

> double-cliquer sur la ligne à reclasser

> choisir le compte de reclassement dans la liste (on ne peut pas le déterminer automatiquement ?)

Bouben

7reclassement.xlsm (225.76 Ko)

Whouah,

C'est exactement ca ! ! !

Il y a quelques détails que j'aimerai peaufiner:

  • La ligne reclassée (dans le compte d'origine), il est possible de le mettre tout en bas du compte? Par exemple si je reclasse la facture ENGIE de 3085€, une fois le reclassement fait, elle va a la ligne 18 (la ligne 19 étant l'OD de reclassement)
  • La ligne dupliquée correspondant au reclassement (dans le nouveau compte) ne doit pas être colorée s'il est possible
  • Enfin, il est possible de procéder via un bouton qui exécute la macro et non une private sub?
Le principe de la fenetre pour créer le compte est top !!!

Mince j'ai oublié ca:

Il faudrait que la date change et devienne celle de B3, et que le journal (en colonne D) devienne "OD"

Mmmh, j'en demande peut être beaucoup, mais ca sera top top top! !!

Bonjour,

Ci-dessous mes réponses, et une nouvelle version en PJ.

On ne doit pas être loin du résultat attendu ...

- La ligne reclassée (dans le compte d'origine), il est possible de le mettre tout en bas du compte? Par exemple si je reclasse la facture ENGIE de 3085€, une fois le reclassement fait, elle va a la ligne 18 (la ligne 19 étant l'OD de reclassement)

OK

- La ligne dupliquée correspondant au reclassement (dans le nouveau compte) ne doit pas être colorée s'il est possible

OK

- Enfin, il est possible de procéder via un bouton qui exécute la macro et non une private sub?

Le principe de la fenetre pour créer le compte est top !!!

Actuellement, la duplication se fait par un double-clic (procédure privée), qui appelle une autre procédure (privée également) avec des paramètres. Les paramètres sont fournis par la procédure sur double-clic.

En passant la procédure en "public", les paramètres ne seront pas renseignés. Il est un peu étrange d'appeler une procédure avec des paramètres depuis un bouton.

Préciser le besoin plutôt que la solution

Il faudrait que la date change et devienne celle de B3, et que le journal (en colonne D) devienne "OD"

A préciser : sur quelle (s) ligne(s)

Dans la nouvelle version : fait uniquement sur la ligne du compte cible

Bouben

Salut à toi,

On y est presque effectivement, c'est vraiment top

Il faudrait que la ligne ajoutée (dans le compte d'origine) soit aussi changée au niveau de la Date et du journal

Je t'ai mis en rouge la ligne dont je parle (Je n'arrive pas à changer la couleur de la cellule, ce n'est pas vraiment génant mais est-ce normal?)

D'accord je comprend la problématique pour les private sub.

En fait, je ne peux pas les utiliser pour une raison principale, le fichier sera amené à être partagé. Sauf erreur de ma part, les privates sub ne fonctionnent pas en partagée :/

Aussi j'ai l'impression que les privates sub ralentissent le fichier

Enfin, le double clic risque d'être gênant dans le sens ou il y aura des mauvaises manip pour les utilisateurs à mon gout (même s'il est possible d'annuler le reclassement)

C'est pour cela que j'imaginais plus un bouton Reclassement (je te l'ai mis pour illustrer mes propos (en haut))

Hello,

Je crois qu'il manque une PJ

La couleur grise est gérée par une mise en forme conditionnelle, MFC à supprimer pour mettre les lignes en rouge manuellement

Ah mince !!

Merci à toi

4test.xlsm (209.16 Ko)

Hello,

Ci-joint une nouvelle version à tester.

Avec les modifications sur la ligne voulue.

Et plus de double-clic.

Sélection d'une ligne, et clic sur le bouton "Reclassement".

Sur la portée public/privé, tu me scotches. C'est la première fois que j'entends cela

En fait, je ne peux pas les utiliser pour une raison principale, le fichier sera amené à être partagé. Sauf erreur de ma part, les privates sub ne fonctionnent pas en partagée :/

Aussi j'ai l'impression que les privates sub ralentissent le fichier

Bouben

C'est top ! ! !

Une dernière demande, il est possible de rajouter aussi à la ligne N "OD de reclassement"?

Mais que pour les deux nouvelles lignes, pas pour la ligne d'origine !

Merci merci

Une dernière demande, il est possible de rajouter aussi à la ligne N "OD de reclassement"?

ligne N

Pas compris

Bouben

A la colonne N

Je t'ai mis en PJ l'exemple

5test.xlsm (211.54 Ko)

Hello,

Une nouvelle version avec le libellé ajouté dans la colonne Cut off.

Bouben

Salut !!

Merci à toi c'est parfait,

En revanche je n'arrive pas à copier coller la macro dans un autre fichier

Pourtant j'ai copier les deux codes (celui dans la "feuille 7" et la feuille "frmReclassement")

J'ai changé dans le code "Feuille 1" par le nom de la feuille, en l'occurence "Analyse FG"

Mais j'ai une erreur "L'indice n'appartient pas à la sélection"

As tu une idée?

Il te faut absolument le fichier? Il contient des données confidentielles

Bonjour,

Le nom de la feuille est écrit "en dur" à 2 endroits dans le UF et dans la procédure "Reclasser".

Difficile à dire sans le fichier.

Ou alors, peux-tu préciser la ligne de code sur laquelle l'erreur apparaît ?

Bouben

Je t'ai mis le fichier en enlevant les données

Dans le même temps, j'en profite pour te demander, à la ligne E3 c'est écrit "Faux à la ligne 31"

Sur les gros fichiers, ce peut être écrit "Faux à la ligne 2552" par exemple. il est possible de faire en sorte que lorsque l'on clique sur la cellule E3, on soit redirigé vers la ligne fausse directement?

Je ne sais pas si j'ai été clair ^^'

2test.xlsm (538.35 Ko)

Hello,

Ci-joint une nouvelle version :

> message d'erreur : dû au nom incorrect de la feuille, cf mon dernier message

Le nom de la feuille est écrit "en dur" à 2 endroits dans le UF et dans la procédure "Reclasser".

> en cliquant sur la cellule E3, le curseur se positionne sur la ligne en anomalie

Bouben

J'ai cherché mais j'ai trouvé le nom de la feuille à remplacer une seule fois

Il n'y a pas la pièce jointe ! !

La PJ :

La PJ ne fonctionne pas :/ j'ai une erreur "Incompatibilité de type"

Rechercher des sujets similaires à "macro reclassement ligne"