XL 2013 Code VBA Excel de calcul du solde journal et affectation résultat dans la colonne solde

Manu Manu

XLDnaute Nouveau
Chers tous bonsoir ,
Dans une routine vba Excel, je souhaiterais générer automatique ment dans la textbox le solde du compte une fois les débit et crédit renseignes. Mon souci majeur c'est de pouvoir mettre a jour le solde dans la textbox avant que les données ne soient transférer dans la feuille Excel ci jointe.
Merci d'avance et bon weekend
 

Pièces jointes

  • FormSaisiebrouillard.xlsm
    24.8 KB · Affichages: 29

soan

XLDnaute Barbatruc
Inactif
Bonjour Emmanuel,

ouvre le fichier joint ; tu es sur "Feuil1" ; fais Ctrl e ➯ rien du tout ! c'est normal sur cette feuille, car comme ça a tout l'air d'être ta feuille modèle, il ne faut pas écrire dessus !

va sur "Feuil2" ; les données ne sont pas les mêmes que dans le fichier de ton énoncé, car tu as choisi des données telles que tous les soldes sont créditeurs, y'a aucun solde débiteur ! j'ai donc pris les données du fichier de ton post #1 (ton sujet qui est sur "Autres discussions / Utilisation du forum").

il y a toujours ton erreur comptable de la ligne 8, car en compta : une opération = un débit ou un crédit, pas les deux en même temps ! mébon, pour la démo qui va suivre, on va laisser comme ça ; donc solde final actuel (créditeur) = 1 842,74.​



comme tu es sur "Feuil1", fais Ctrl e ➯ le formulaire "Opération" s'affiche ; on va saisir une opération à la date du lendemain de la dernière opération :

saisis ce Jour : 23/02/21 ; appuie sur la touche TAB (Tabulation) pour passer au champ à droite ; pour Libellé, saisis : sorties ; TAB ; Débit : 3258.42 ; TAB ; tu peux voir qu'AVANT que les données soient transférées sur la feuille de calcul, il y a le solde et sa nature ; en effet, le champ vert montre un "Solde après chaque mouvement" de -1 415,68, et le champ bleu précise que c'est un solde DEBITEUR ; Crédit : ne saisis rien ! (ça serait seulement pour une entrée) ; TAB ➯ c'est allé sur le bouton Enregistrer ; tu peux appuyer sur la touche Espace pour valider ➯ l'opération a été écrite sur la feuille de calcul, en ligne 28. :) note aussi que les données du formulaire ont été effacées pour la saisie d'une nouvelle opération.

saisis ce Jour : 24/02/21 ; TAB ; Libellé : ENTREE ; Débit : ne saisis rien ! (ça serait seulement pour sorties) ; TAB ➯ solde débiteur : -1 415,68 ; Crédit : 5728,15 ; TAB ➯ c'est allé sur le bouton Enregistrer, et tu peux voir que maintenant, tu as un solde créditeur de 4 312,47 ; Espace ➯ écriture de la ligne 29 et données du formulaires effacées pour une nouvelle saisie. :)



pour la saisie du séparateur décimal, tu peux mettre un point ou une virgule : ça fera pareil ; pour les montants Débit ou Crédit, saisis uniquement des nombres positifs : pas avec un signe moins devant !

si tu faisais une autre erreur comptable comme en ligne 8, le solde après opération sera quand même calculé en fonction des deux montants.​



si besoin, tu peux demander une adaptation.
à te lire pour avoir ton avis.

soan
 

Pièces jointes

  • FormSaisiebrouillard.xlsm
    31.1 KB · Affichages: 25

Manu Manu

XLDnaute Nouveau
Bonsoir Soan,
Merci pour ta prompte contribution. Je comprend ta routine sauf que je vais devoir l'adapter avec du vba 2013.
Si tu le peux ce sera un gain du temps pour moi, dans le cas contraire je vais me débrouiller a adapter ton code.
Avec mes meilleurs salutations
Cordialement
 

soan

XLDnaute Barbatruc
Inactif
Bonsoir Emmanuel,

tu as écrit : « je vais devoir l'adapter avec du vba 2013 »

je n'ai pas compris, car j'ai Excel 2007, et le VBA que j'utilise n'a pas besoin d'adaptation pour fonctionner sur une des versions ultérieures : il y a « compatibilité ascendante » ; c'est-à-dire que le VBA de ton Excel 2013 comprend très bien toutes les instructions VBA de mon Excel 2007.

mais à tout hasard, si vraiment y'a quelque chose à adapter, je veux bien essayer de t'aider si tu donnes plus de précisions ; j'peux rien garantir d'avance vu qu'j'ai pas Excel 2013.​

soan
 

Manu Manu

XLDnaute Nouveau
Bonsoir Emmanuel,

tu as écrit : « je vais devoir l'adapter avec du vba 2013 »

je n'ai pas compris, car j'ai Excel 2007, et le VBA que j'utilise n'a pas besoin d'adaptation pour fonctionner sur une des versions ultérieures : il y a « compatibilité ascendante » ; c'est-à-dire que le VBA de ton Excel 2013 comprend très bien toutes les instructions VBA de mon Excel 2007.

mais à tout hasard, si vraiment y'a quelque chose à adapter, je veux bien essayer de t'aider si tu donnes plus de précisions ; j'peux rien garantir d'avance vu qu'j'ai pas Excel 2013.​

soan
Bonsoir Soan et tous,

J’ai créé finalement dans mon nouveau TP un formulaire avec ListBox. Je travaille avec VBA Excel 2013.

Le problème c’est de ne pouvoir générer le solde de caisse à chaque ligne de la colonne H et transférer les données saisis dans la feuille BDcaisse après avoir renseigner tous les controles.

Prière aussi de revoir le code d’alimentation et d’affichage de la ListBox que j’ai fait. Je crains qu’elle puisse être à l’objet de mon blocage.

Aidez-moi svp au vu du fichier ci joint
Merci a l'avance
 
Dernière modification par un modérateur:

soan

XLDnaute Barbatruc
Inactif
Bonjour Emmanuel,

ATTENTION : supprime au plus vite le fichier de ton post #5 car il comporte des données confidentielles ! ➯ je ne peux pas travailler dessus ! sur la 1ère feuille "ListeMembre", tu dois remplacer toutes les données réelles par des données fictives !

Sur ta feuille "BDcaisse", ta ligne 1 est une ligne d'en-têtes, de A à I ; tu as mis dessus une image qui reproduit ces en-têtes ; je n'en vois pas l'utilité, et d'après moi, tu peux supprimer cette image ; mais bien sûr, garde l'image si tu as une bonne raison pour ça. :)

soan
 

Manu Manu

XLDnaute Nouveau
Bonjour Emmanuel,

ATTENTION : supprime au plus vite le fichier de ton post #5 car il comporte des données confidentielles ! ➯ je ne peux pas travailler dessus ! sur la 1ère feuille "ListeMembre", tu dois remplacer toutes les données réelles par des données fictives !

Sur ta feuille "BDcaisse", ta ligne 1 est une ligne d'en-têtes, de A à I ; tu as mis dessus une image qui reproduit ces en-têtes ; je n'en vois pas l'utilité, et d'après moi, tu peux supprimer cette image ; mais bien sûr, garde l'image si tu as une bonne raison pour ça. :)

soan
Bonjour Soan,
Sorry ces données ont été imaginées. Si elles te paraissent néanmoins réelles, je me dois de les remplacer.
Ci joint le nouveau fichier.
 

Pièces jointes

  • GestionCaisse ED2.xlsm
    97.9 KB · Affichages: 13

soan

XLDnaute Barbatruc
Inactif
Bonjour Emmanuel,

j'avais bien vu ton post #7 ; je travaille à partir du nouveau fichier de ce post ; j'ai déjà fait beaucoup de choses, mais y'a encore plein d'choses à faire ! donc ça va être encore vraiment très long avant qu'je puisse poster ma solution ; actuellement, je suis très ennuyé sur ces 2 points :

1) dans le tout 1er fichier "FormSaisiebrouillard", tu n'avais pas indiqué le nom du compte, et j'avais pensé que c'était un compte Banque (n° PCG : 512 ; PCG = Plan Comptable Général) ; dans un tel compte, le solde peut être négatif car s'il est de -300 €, ça signifie que tu as un découvert de 300 € ; mais dans ton fichier "GestionCaisse ED2", il s'agit du compte Caisse (n° PCG : 530) ; or un tel compte ne peut pas avoir un solde négatif, pour la simple et bonne raison qu'au pire, la Caisse est vide ! 0 € 0 centimes (idem si t'as une autre monnaie comme par exemple le franc CFA, ou des dirhams) ; de plus, les billets de banque ont toujours une valeur faciale positive ; il n'existe pas de billet de banque de -500 € ! ni de pièces négatives de -1 € ou -20 cts ; remarque : si un solde de Caisse est négatif, c'est un motif de rejet du dossier comptable par le Fisc. (si tu ne sais pas ce qu'est le Fisc, c'est à peu près comme une sangsue, fiscalement et financièrement très vorace, que rien ne peut arrêter ! comment ? tu es contrôleur des impôts ? oh, pardon ! 😜)

2) dans ton 1er fichier "FormSaisiebrouillard", tu as mis les encaissements (entrées) au crédit et les décaissements (sorties) au débit ; c'est effectivement comme ça que font les Banques, car elles tiennent le compte Client (c'est à dire le titulaire du compte Banque) ; mais dans une Entreprise, on fait exactement l'inverse, car on tient le compte 512 Banque (je parle bien du compte : c'est pas le coffre-fort de la Banque !) : encaissements (entrées) au débit ; décaissements (sorties) au crédit ; et pour un compte 530 Caisse, les sens débit/crédit sont les mêmes ; dans ton fichier "GestionCaisse ED2", tu n'as pas mis d'opérations ; je vais mettre les encaissements (entrées de caisse) au débit et les décaissements (sorties de caisse) au crédit, comme on le ferait dans une Entreprise ; qu'est-ce que tu en penses ?

en parallèle avec ton dossier, je continue d'aider pour d'autres exos du forum, ce qui ne veut absolument pas dire que je laisse tomber le tien.​

soan
 

soan

XLDnaute Barbatruc
Inactif
Bonsoir Emmanuel,

ATTENTION : le fichier joint est seulement une ébauche provisoire ! c'est juste pour que tu vois la présentation actuelle de ton formulaire ; et j'ai seulement finalisé la nouvelle sub UserForm_Initialize() ; rien n'est encore fait pour la suite ; car pour cela, j'attends toujours ta réponse à mes posts précédents, et notamment :

préfères-tu que ce soit comme dans une Entreprise : les ENCAISSEMENTS au DÉBIT et les DÉCAISSEMENTS au CRÉDIT ? OU l'inverse : les ENCAISSEMENTS au CRÉDIT et les DÉCAISSEMENTS au DÉBIT ?

ATTENTION : NE TE TROMPE SURTOUT PAS dans ta réponse ! car je ferai ton exo selon ta réponse, mais je ne le referai pas ensuite une deuxième fois ! là, tu verras que pour l'instant, c'est comme dans une Entreprise, donc : les ENCAISSEMENTS au DÉBIT et les DÉCAISSEMENTS au CRÉDIT ; comme j'en suis tout juste à l'étape de l'initialisation du formulaire, je veux bien changer au cas où tu préfères : ENCAISSEMENTS au CRÉDIT et DÉCAISSEMENTS au DÉBIT ; mais quand j'aurai commencé à faire la suite, je ne reviendrai pas en arrière pour modifier le sens des écritures et tout ce qui y est lié !

comme j'ai un énorme retard sur ton dossier, c'est possible aussi que tu l'as déjà résolu par toi-même entre-temps (ou avec l'aide d'une autre personne) ; autre possibilité, toujours à cause de mon retard : peut-être que cet exo ne t'intéresse plus ?

au cas où cet exo t'intéresse toujours : a) merci de me donner ton avis sur le fichier joint, même si ça en est qu'au tout début ; b) n'oublie pas de répondre, sans erreur, à ma question sur le sens des écritures.

à l'ouverture du fichier, fais Ctrl e pour faire apparaître le formulaire.​

à te lire pour la suite. :)

soan
 

Pièces jointes

  • GestionCaisse ED2.xlsm
    98.4 KB · Affichages: 19

Manu Manu

XLDnaute Nouveau
Bonsoir Emmanuel,

ATTENTION : le fichier joint est seulement une ébauche provisoire ! c'est juste pour que tu vois la présentation actuelle de ton formulaire ; et j'ai seulement finalisé la nouvelle sub UserForm_Initialize() ; rien n'est encore fait pour la suite ; car pour cela, j'attends toujours ta réponse à mes posts précédents, et notamment :

préfères-tu que ce soit comme dans une Entreprise : les ENCAISSEMENTS au DÉBIT et les DÉCAISSEMENTS au CRÉDIT ? OU l'inverse : les ENCAISSEMENTS au CRÉDIT et les DÉCAISSEMENTS au DÉBIT ?

ATTENTION : NE TE TROMPE SURTOUT PAS dans ta réponse ! car je ferai ton exo selon ta réponse, mais je ne le referai pas ensuite une deuxième fois ! là, tu verras que pour l'instant, c'est comme dans une Entreprise, donc : les ENCAISSEMENTS au DÉBIT et les DÉCAISSEMENTS au CRÉDIT ; comme j'en suis tout juste à l'étape de l'initialisation du formulaire, je veux bien changer au cas où tu préfères : ENCAISSEMENTS au CRÉDIT et DÉCAISSEMENTS au DÉBIT ; mais quand j'aurai commencé à faire la suite, je ne reviendrai pas en arrière pour modifier le sens des écritures et tout ce qui y est lié !

comme j'ai un énorme retard sur ton dossier, c'est possible aussi que tu l'as déjà résolu par toi-même entre-temps (ou avec l'aide d'une autre personne) ; autre possibilité, toujours à cause de mon retard : peut-être que cet exo ne t'intéresse plus ?

au cas où cet exo t'intéresse toujours : a) merci de me donner ton avis sur le fichier joint, même si ça en est qu'au tout début ; b) n'oublie pas de répondre, sans erreur, à ma question sur le sens des écritures.

à l'ouverture du fichier, fais Ctrl e pour faire apparaître le formulaire.​

à te lire pour la suite. :)

soan
Bonjour
Merci pour tes commentaires et explications.
Sur la question des sens, oui je préfère que ce soit comme dans une Entreprise : les ENCAISSEMENTS au DÉBIT et les DÉCAISSEMENTS au CRÉDIT ? OU l'inverse : les ENCAISSEMENTS au CRÉDIT et les DÉCAISSEMENTS au DÉBIT.
Merci
 

soan

XLDnaute Barbatruc
Inactif
Bonjour Emmanuel,

merci pour avoir confirmé que tu préfères que ce soit comme dans une Entreprise, donc : Encaissements au Débit ; Décaissements au Crédit ; tu aurais dû poster ton nouveau fichier ici plutôt que sur le sujet de Fipat, mébon, maint'nant c'est déjà fait ; j'ai pris ce fichier, et c'est celui-ci que je te retourne, avec plein d'modifs.

j'ai remarqué que ton 2ème formulaire "F_Remboursement" plantait dès le départ ! :( j'ai corrigé juste ce qu'il faut pour qu'il s'affiche sans planter, rien de plus ; sur la feuille "BDrembour", fais Ctrl r ; puis ferme le UF et va sur la feuille "BDcaisse" ; fais Ctrl e ; tu peux voir que l'ouverture du UF est ok ; je n'ai rien fait pour le bouton "Modifier", j'ai seulement fait l'initialisation du UF et le bouton "Valider l'opération" (= Ajout d'une opération).

je te laisse faire tous les tests nécessaires, y compris voir ce qui se passe quand tu essayes de saisir à la fois une Entrée et une Sortie ; ou voir ce qui se passe si tu saisis la sortie qui ferait que tu aurais un solde créditeur.​

à te lire pour avoir ton avis. ;)

soan
 

Pièces jointes

  • Test modification data listbox.xlsm
    72.4 KB · Affichages: 19

Manu Manu

XLDnaute Nouveau
Bonjour Emmanuel,

merci pour avoir confirmé que tu préfères que ce soit comme dans une Entreprise, donc : Encaissements au Débit ; Décaissements au Crédit ; tu aurais dû poster ton nouveau fichier ici plutôt que sur le sujet de Fipat, mébon, maint'nant c'est déjà fait ; j'ai pris ce fichier, et c'est celui-ci que je te retourne, avec plein d'modifs.

j'ai remarqué que ton 2ème formulaire "F_Remboursement" plantait dès le départ ! :( j'ai corrigé juste ce qu'il faut pour qu'il s'affiche sans planter, rien de plus ; sur la feuille "BDrembour", fais Ctrl r ; puis ferme le UF et va sur la feuille "BDcaisse" ; fais Ctrl e ; tu peux voir que l'ouverture du UF est ok ; je n'ai rien fait pour le bouton "Modifier", j'ai seulement fait l'initialisation du UF et le bouton "Valider l'opération" (= Ajout d'une opération).

je te laisse faire tous les tests nécessaires, y compris voir ce qui se passe quand tu essayes de saisir à la fois une Entrée et une Sortie ; ou voir ce qui se passe si tu saisis la sortie qui ferait que tu aurais un solde créditeur.​

à te lire pour avoir ton avis. ;)

soan
Bonjour Soan

J'ai fais les tests proposés dans ton fichier. Merci déjà pour ta disponibilité.
Comme tu l'as déjà signalé le bouton modifier ne fonctionne pas du tout. Le problème à résoudre à ce niveau est de s'assurer qu'à chaque modification de ligne sélectionnée avant la dernière ligne , il faudrait automatiquement que les soldes et sens solde des lignes suivantes se mettent à jour en fonction des changements opérés sur le solde de la ligne modifiée. il en sera de même pour le cas de suppression. Si une solution est trouvée chapeau cette semaine je pourrai souffler avant de continuer.

Merci encore Soan pour ton soutien
 

soan

XLDnaute Barbatruc
Inactif
Bonjour Emmanuel,

tu as mis un smiley triste 🙁 sur mon post #12 ; serait-ce car quelque chose ne marche pas concernant l'initialisation du formulaire "F_CaisseReunion" ? ou peut-être que c'est le bouton "Valider l'opération" qui ne marche pas comme tu veux ? pourtant, je l'ai testé et ça marche correctement ; j'avais même fait en plus l'initialisation correcte du 2ème UserForm "F_Remboursement" : ça ne plante plus, alors que dans ton fichier initial ce n'était pas au point ! ce qui est gênant, avec ce smiley triste, c'est que les lecteurs de la conversation risquent de penser que le fichier joint de mon post #12 n'est pas bon, alors que pourtant il fait correctement le travail décrit dans ce paragraphe.

au cas où tu aurais mis le smiley triste uniquement car ce qui concerne le bouton "Modifier" n'est pas encore fait ou car j'ai mis longtemps à t'écrire de nouveau, je rappelle le point 2 de la Charte, rubrique Demandeur : « 2 – Tous les membres du forum répondent gracieusement aux questions. Il n’y a donc aucune obligation de résultat et de délai. Les mots URGENT, SOS, AU SECOURS sont donc à bannir. » ; de plus, ta demande pour le bouton "Modifier" est beaucoup plus compliquée que prévu, à cause de plusieurs points différents, pas qu'un seul ! j'ai été obligé de compléter et modifier plein d'choses, au point que ça impacte indirectement ce qui est pour "Valider l'opération" ; j'ai re-testé avec le nouveau code VBA et ça marche ; j'allais poster mon nouveau fichier, qui me semble OK pour le bouton "Modifier", mais s'il va récolter un smiley triste car ce qui concerne le bouton "Supprimer la ligne" n'est pas fait, je me pose des questions... je veux bien que tu mettes un smiley sur ce que j'ai fait ; pas sur ce que je n'ai pas fait car ce n'était pas prévu au départ dans le titre du sujet, ou car j'ai manqué de disponibilité.

rappel : titre du sujet : « Code VBA Excel de calcul du solde journal et affectation résultat dans la colonne solde » ; assurément, je ne pouvais pas deviner en lisant ce seul titre que tu me demanderais de faire 3 choses différentes, chacune étant un gros travail à faire ! j'étais censé faire uniquement l'ajout d'une opération, dont l'affichage du solde lors de la saisie ; puis tu m'as demandé aussi la modification d'une opération, puis encore la suppression.

dis-moi si ce que j'ai fait pour le bouton "Valider l'opération" te convient ou non ; si oui : parfait, problème résolu ! 😊 sinon, dis-moi ce qui ne va pas et je ferai une adaptation.

pour la suite, c'est mieux que tu ouvres un autre sujet pour le bouton "Modifier" ; puis plus tard encore un autre sujet pour le bouton "Supprimer la ligne".
soan
 
Dernière édition:

Manu Manu

XLDnaute Nouveau
Bonjour Emmanuel,

tu as mis un smiley triste 🙁 sur mon post #12 ; serait-ce car quelque chose ne marche pas concernant l'initialisation du formulaire "F_CaisseReunion" ? ou peut-être que c'est le bouton "Valider l'opération" qui ne marche pas comme tu veux ? pourtant, je l'ai testé et ça marche correctement ; j'avais même fait en plus l'initialisation correcte du 2ème UserForm "F_Remboursement" : ça ne plante plus, alors que dans ton fichier initial ce n'était pas au point ! ce qui est gênant, avec ce smiley triste, c'est que les lecteurs de la conversation risquent de penser que le fichier joint de mon post #12 n'est pas bon, alors que pourtant il fait correctement le travail décrit dans ce paragraphe.

au cas où tu aurais mis le smiley triste uniquement car ce qui concerne le bouton "Modifier" n'est pas encore fait ou car j'ai mis longtemps à t'écrire de nouveau, je rappelle le point 2 de la Charte, rubrique Demandeur : « 2 – Tous les membres du forum répondent gracieusement aux questions. Il n’y a donc aucune obligation de résultat et de délai. Les mots URGENT, SOS, AU SECOURS sont donc à bannir. » ; de plus, ta demande pour le bouton "Modifier" est beaucoup plus compliquée que prévu, à cause de plusieurs points différents, pas qu'un seul ! j'ai été obligé de compléter et modifier plein d'choses, au point que ça impacte indirectement ce qui est pour "Valider l'opération" ; j'ai re-testé avec le nouveau code VBA et ça marche ; j'allais poster mon nouveau fichier, qui me semble OK pour le bouton "Modifier", mais s'il va récolter un smiley triste car ce qui concerne le bouton "Supprimer la ligne" n'est pas fait, je me pose des questions... je veux bien que tu mettes un smiley sur ce que j'ai fait ; pas sur ce que je n'ai pas fait car ce n'était pas prévu au départ dans le titre du sujet, ou car j'ai manqué de disponibilité.

rappel : titre du sujet : « Code VBA Excel de calcul du solde journal et affectation résultat dans la colonne solde » ; assurément, je ne pouvais pas deviner en lisant ce seul titre que tu me demanderais de faire 3 choses différentes, chacune étant un gros travail à faire ! j'étais censé faire uniquement l'ajout d'une opération, dont l'affichage du solde lors de la saisie ; puis tu m'as demandé aussi la modification d'une opération, puis encore la suppression.

dis-moi si ce que j'ai fait pour le bouton "Valider l'opération" te convient ou non ; si oui : parfait, problème résolu ! 😊 sinon, dis-moi ce qui ne va pas et je ferai une adaptation.

pour la suite, c'est mieux que tu ouvres un autre sujet pour le bouton "Modifier" ; puis plus tard encore un autre sujet pour le bouton "Supprimer la ligne".
soan
Bonjour Soan,
Cela n'était pas fait consciemment. Après une fatigue vous pouvez confondre les smiley vous mêmes non!
Si vous n'avez plus de temps pour ma requête, pas grave. Vous n'êtes pas obligé tout de même. Vos cours de morale se trompent de cible.
Merci pour ce que vous avez déjà fait monsieur l'Expert. Je me débrouillerai comme souvent.
A plus.
Emma
 

Discussions similaires

Statistiques des forums

Discussions
315 126
Messages
2 116 493
Membres
112 765
dernier inscrit
SIDIANW