XL 2016 Gestion de dépenses et suivi budgetaire

Monhtc

XLDnaute Occasionnel
Bonjour le forum. J'essaie de monter un programme via VBA pour la gestion des dépense d'un budget qui est subdivisé en ligne budgétaire. Avec pour chaque paiement:

  • La dotation budgétaire initiale
  • le montant des dépenses antérieur sur la ligne budgétaire concerné
  • Le cumul des dépenses. C'est à dire le montant des dépenses antérieures ajouté au montant de la dépense actuel
  • Le solde qu'il reste sur la ligne concernée
Merci infiniment.
 
Solution
Bonsoir ou Bonjour @Monhtc , le Forum

Bon je pense que tu veux encore une fois de plus le beurre et l'argent du beurre et tout ceci aved des explications au compte goutte ...

Je pense qu'entre le mode Correction, qui doit reprendre les Soldes Cummulés, et ton mode Impression Historique à un instant "T", on doit complètement scinder les deux actions, elle n'ont rien à voir...

Tu trouveras un "ToggleButton" maintenant dans cette v07 qui permet de scinder ces actions complètement différentes.

J'espère que cette fois-ci on est bon, car c'est bourré de Verrues qui nourrissent plein de Crabes là dedans, à force ça va te pêter à la figure et te pincer le nez !

Bon Dimanche
@+Thierry

Monhtc

XLDnaute Occasionnel
Bon comme j'avais quand même la v04 BETA ouverte... Avant de fermer j'ai pensé à une "saleté de verrue" comme suit :

1) Tu ajoutes un "-" dans le Key Press

VB:
Private Sub TextBoxMontant_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If InStr("-0123456789", Chr(KeyAscii)) = 0 Then KeyAscii = 0
End Sub

2) Tu ajoutes ce bout de code :
If Len(Me.TextBoxMontant) = 1 And Me.TextBoxMontant = "-" Then Exit Sub

Dans le Change :
VB:
Private Sub TextBoxMontant_Change()
Dim n As Integer
Dim c As Range
'Dim firstAddress
Dim MyCol As Byte

If Len(Me.TextBoxMontant) = 1 And Me.TextBoxMontant = "-" Then Exit Sub

Ca sent le "crabe pourri" mais bon... Tu verras si ca te convient en dépannage !

@+Thierry
Bonjour bonsoir le fil, je risque de me faire engueuler encore.
Mais il le faut car Je rencontre un léger beug dans le mode correction quand je survole une annulation de paiement, le montant mis en négatif lors d'une annulation de paiement apparaît en positif. Ce qui change tous les soldes
 

Monhtc

XLDnaute Occasionnel
Bonjour
Qu'as-tu essayé ?
@+
VB:
With WSBDD
    Me.LabelTransaction = .Range("A" & ListBoxChangeItem.ListIndex + 2)
    Me.ComboBoxEngagementCode = Format(.Range("H" & ListBoxChangeItem.ListIndex + 2), "0000")
    Me.ComboBoxEngagementCode.Locked = True
    Me.ComboBoxFinancement = .Range("E" & ListBoxChangeItem.ListIndex + 2)
    Me.ComboBoxCat = .Range("F" & ListBoxChangeItem.ListIndex + 2)
    Me.ComboBoxReglementMethod = .Range("G" & ListBoxChangeItem.ListIndex + 2)
    Me.ComboBoxBeneficiary = .Range("C" & ListBoxChangeItem.ListIndex + 2)
    Me.ComboBoxBenefAccount = .Range("D" & ListBoxChangeItem.ListIndex + 2)
    Me.TextBoxDotation = .Range("K" & ListBoxChangeItem.ListIndex + 2)
    Me.TextBoxAnterieur = .Range("L" & ListBoxChangeItem.ListIndex + 2)
    Me.TextBoxMontant = .Range("J" & ListBoxChangeItem.ListIndex + 2)
    If Len(Me.TextBoxMontant) = 1 And Me.TextBoxMontant = "-" Then Exit Sub
    Me.TextBoxSolde = .Range("M" & ListBoxChangeItem.ListIndex + 2)
    Me.TextBoxCumul = .Range("N" & ListBoxChangeItem.ListIndex + 2)
    Me.TextBoxOPprovisoire = .Range("O" & ListBoxChangeItem.ListIndex + 2)
    Me.TextBox9 = .Range("I" & ListBoxChangeItem.ListIndex + 2)
    Me.Textdate = .Range("P" & ListBoxChangeItem.ListIndex + 2)
 

_Thierry

XLDnaute Barbatruc
Repose en paix
If Len(Me.TextBoxMontant) = 1 And Me.TextBoxMontant = "-" Then Exit Sub

ArF !!! Oui la il y a un gros tourteau !

C'est quoi que tu attends quand on fait un -10 000 en Annulation d'ordre ?
1594800666592.png


@+Thierry
 

Monhtc

XLDnaute Occasionnel
Et les 374 000 en solde, tu as besoin de lunettes ?

Regarde la pièce jointe 1073223


Et c'est quoi encore ça le Mode Correction ?

Je connaissais le mode "Annulation Ordre de Paiement" et "Regularisation Ordre Paiement"...
C'est vraiment pas possible de suivre avec toi !
Le mode correction quand je clique sur la listbox à droite afin de visualiser les ordres de paiement.
Une fois arrivée sur "Annulation ordre de paiement" si besoin de l imprimer à nouveau, il apparait plus le signe négatif
 

_Thierry

XLDnaute Barbatruc
Repose en paix
Mais tu ne réponds pas pour les 374 000 qui ajoute les -10 000 au lieu de les soustraire ???

Je n'y comprends rien en compta mais ça ne te gène pas où tu gardes encore ça en réserve pour revenir me prendre la tête dans quelques jours ? LoL

Le Mode Correction, c'est quand tu click sur la ListBox ah oui... et tu voudrais que ça fasse ceci en Mode Correction de l'écriture faite en Mode Annulation de l'écritre faite en Regularisation Ordre Paiement .... Vous n'êtes jamais clairs dans vos têtes les Comptable !!!! :cool:

Donc en vidéo çà donne ceci :
monhtc2.gif


Et la balance ne s'améliore pas ..........
1594813838965.png


Je ne sais pas mais ca pue le crabe pourri pour de bon !
Si tu peux m'expliquer .................... Clairement !
Bon aprèm
@+Thierry
 

Monhtc

XLDnaute Occasionnel
Il n'y a aucun problème à ce niveau. Les modes de paiement définitif annulation et provisoire marchent tous parfaitement.
Le problème ce situe au niveau de la listbox en consultation. Lorsque je survole les données enregistrées déjà, je n'ai pas les bons montants au niveau du cumul et de l'antérieur ( qui très souvent récupère encore le dernier cumul entrée au lieu de récupérer le cumul qui avait déjà été entré sur la ligne)
 

ChTi160

XLDnaute Barbatruc
Bonjour Monhtc
Bonjour @+Thierry
Bonjour le Forum
Chouette ! Thierry
Tu me donnes l'occasion de te Saluer Lol
Dans cette procédure ,remplacer les Virgules par des Points vigurles Lol
VB:
With Me.ListBoxChangeItem
.RowSource = RngBDD.Address
.ColumnHeads = False
.ColumnCount = 14
.ColumnWidths = "120;100;80;100;100;100;00;100;100;100;100;100;100;100" 'Ici remplacer virgule par Points Virgules
End With
Bonne journée
jean marie
 

Discussions similaires

Réponses
11
Affichages
2 K

Statistiques des forums

Discussions
312 230
Messages
2 086 428
Membres
103 207
dernier inscrit
Michel67