Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Macro Echéance / Budget Familial

7 réponses
Avatar
Calou
Bonjour,
Voilà ce qui m'amène vers vous ce soir ! Je suis en train de monter un
tableau Excel pour me permettre de suivre mon budget familial. Et puis,
étant donné qu'il y a pas mal d'opération qui revienne tous les mois, tous
les 2 mois... Je me suis dit qu'il serait souhaitable de suivres ces
opérations dans un onglet particulier. Dans cet onglet, on retrouve les
dites opéations avec leur périodicité et la date de la prochaine échéance.
Mais plutot que de gérer tout ça à la main, serait il possible de le faire
faire à une macro.
Du genre, si la date de la prochaine échéance est antérieure ou égale à la
date du jour, alors on inscrit cette opération dans l'onglet du même nom et
dans l'onglet échéance, on inscrit la date de la prochaine échéance au
niveau de la date de l'opération et on recalcule la prochaine échaénce.

Pour davantage de clareté, je vous joins le fichier.
http://cjoint.com/?buuMdqNEi3
Etant donné mon niveau sous Excel, n'hésitez pas à détailler vos réponses.
Un grand merci par avance pour vos lumière et votre disponibilité.
Bonne soirée
Philippe

7 réponses

Avatar
Jacky
Bonsoir,

Ceci lancé par dans le " Workbook_Open()"
mettra les échéances dans la feuille "opération" si la date est égale ou
dépassée de la date du jour.
Et diminue de 1 à chaque inscription

'****Dans le ThisWorbook--------

Private Sub Workbook_Open()
jj
End Sub
'--------------

'***---------Dans un module

Sub jj()
With Feuil3
For Each c In .Range("d4:d" & .[d65536].End(3).Row)
derlg = Feuil1.[a65536].End(3).Row + 1
If c <= Date And .Cells(c.Row, 3) > 0 Then
Feuil1.Range("a" & derlg).Value = .Cells(c.Row, 4).Value
.Range(.Cells(c.Row, 5), .Cells(c.Row, 12)).Copy _
Feuil1.Range("b" & derlg)
.Cells(c.Row, 3) = .Cells(c.Row, 3) - 1
If .Cells(c.Row, 3) = 0 Then MsgBox .Cells(c.Row, 7) & Chr(10) &
"Dernière écheance"
End If
Next
End With
End Sub
'-----------------------
Exemple ici:
http://cjoint.com/?buxJA10iMn


--
Salutations
JJ


"Calou" a écrit dans le message de news:
%
Bonjour,
Voilà ce qui m'amène vers vous ce soir ! Je suis en train de monter un
tableau Excel pour me permettre de suivre mon budget familial. Et puis,
étant donné qu'il y a pas mal d'opération qui revienne tous les mois, tous
les 2 mois... Je me suis dit qu'il serait souhaitable de suivres ces
opérations dans un onglet particulier. Dans cet onglet, on retrouve les
dites opéations avec leur périodicité et la date de la prochaine échéance.
Mais plutot que de gérer tout ça à la main, serait il possible de le faire
faire à une macro.
Du genre, si la date de la prochaine échéance est antérieure ou égale à la
date du jour, alors on inscrit cette opération dans l'onglet du même nom
et dans l'onglet échéance, on inscrit la date de la prochaine échéance au
niveau de la date de l'opération et on recalcule la prochaine échaénce.

Pour davantage de clareté, je vous joins le fichier.
http://cjoint.com/?buuMdqNEi3
Etant donné mon niveau sous Excel, n'hésitez pas à détailler vos réponses.
Un grand merci par avance pour vos lumière et votre disponibilité.
Bonne soirée
Philippe




Avatar
Calou
Bonjour,
Avant toute chose, un grand merci à Jacky pour ce travail. Par contre je
crois que je me suis mal exprimé sur la signification de la colonne 'Durée'.
Le contenu de cette ne doit pas changé car il indique à quel intervalle
cette opération doit revenir.
Exemple : Dans la colonne Date, on a le 15/01/2008, dans périodicité nous
aurons
'Mois' et durée : 2 (donc tous les 2 mois) => la prochaine échéance sera le
15/03/2008, et quand cette date arrivera, on retrouvera dans la colonne date
le 15/03/2008 avec comme prochaine échéance le 15/05/2008 et ainsi de suite.
Malheureusement, mes connaissances ne sont pas suffisantes pour modifier
cette macro
Si ce n'est pas abusé, merci de me dire le contenu de la macro.
Un grand merci pour votre aide.
Bonne soirée.
Philippe

"Jacky" a écrit dans le message de news:
%
Bonsoir,

Ceci lancé par dans le " Workbook_Open()"
mettra les échéances dans la feuille "opération" si la date est égale ou
dépassée de la date du jour.
Et diminue de 1 à chaque inscription

'****Dans le ThisWorbook--------

Private Sub Workbook_Open()
jj
End Sub
'--------------

'***---------Dans un module

Sub jj()
With Feuil3
For Each c In .Range("d4:d" & .[d65536].End(3).Row)
derlg = Feuil1.[a65536].End(3).Row + 1
If c <= Date And .Cells(c.Row, 3) > 0 Then
Feuil1.Range("a" & derlg).Value = .Cells(c.Row, 4).Value
.Range(.Cells(c.Row, 5), .Cells(c.Row, 12)).Copy _
Feuil1.Range("b" & derlg)
.Cells(c.Row, 3) = .Cells(c.Row, 3) - 1
If .Cells(c.Row, 3) = 0 Then MsgBox .Cells(c.Row, 7) & Chr(10) &
"Dernière écheance"
End If
Next
End With
End Sub
'-----------------------
Exemple ici:
http://cjoint.com/?buxJA10iMn


--
Salutations
JJ


"Calou" a écrit dans le message de news:
%
Bonjour,
Voilà ce qui m'amène vers vous ce soir ! Je suis en train de monter un
tableau Excel pour me permettre de suivre mon budget familial. Et puis,
étant donné qu'il y a pas mal d'opération qui revienne tous les mois,
tous
les 2 mois... Je me suis dit qu'il serait souhaitable de suivres ces
opérations dans un onglet particulier. Dans cet onglet, on retrouve les
dites opéations avec leur périodicité et la date de la prochaine
échéance.
Mais plutot que de gérer tout ça à la main, serait il possible de le
faire
faire à une macro.
Du genre, si la date de la prochaine échéance est antérieure ou égale à
la
date du jour, alors on inscrit cette opération dans l'onglet du même nom
et dans l'onglet échéance, on inscrit la date de la prochaine échéance au
niveau de la date de l'opération et on recalcule la prochaine échaénce.

Pour davantage de clareté, je vous joins le fichier.
http://cjoint.com/?buuMdqNEi3
Etant donné mon niveau sous Excel, n'hésitez pas à détailler vos
réponses.
Un grand merci par avance pour vos lumière et votre disponibilité.
Bonne soirée
Philippe










Avatar
Jacky
Bonsoir,
Le fichier modifié comme (je pense) tu le souhaites
http://cjoint.com/?bvxpbiyHdo
Bien que je ne comprenne pas tout à fait la logique.
Si la colonne C de la feuille échéancier ne diminue pas , les échéances
seront déduites à chaque lancement du code si la date limite n'est pas
atteinte, ou alors à modifier manuellement ...non?? Alors que le but, je
suppose, était de les rendre automatique.
J'ai modifier la formule de la colonne C de la feuille échéancier, car la
sélection "jours" augmentait la date en nombre d'année.
Et aussi la formule de la colonne J(solde) de la feuille opération
La mise à jour des échéances se fait pas clique sur le bouton sur la feuille
"Opération.":o((
--
Salutations
JJ


"Calou" a écrit dans le message de news:

Bonjour,
Avant toute chose, un grand merci à Jacky pour ce travail. Par contre je
crois que je me suis mal exprimé sur la signification de la colonne
'Durée'.
Le contenu de cette ne doit pas changé car il indique à quel intervalle
cette opération doit revenir.
Exemple : Dans la colonne Date, on a le 15/01/2008, dans périodicité nous
aurons
'Mois' et durée : 2 (donc tous les 2 mois) => la prochaine échéance sera
le 15/03/2008, et quand cette date arrivera, on retrouvera dans la colonne
date le 15/03/2008 avec comme prochaine échéance le 15/05/2008 et ainsi de
suite. Malheureusement, mes connaissances ne sont pas suffisantes pour
modifier cette macro
Si ce n'est pas abusé, merci de me dire le contenu de la macro.
Un grand merci pour votre aide.
Bonne soirée.
Philippe

"Jacky" a écrit dans le message de news:
%
Bonsoir,

Ceci lancé par dans le " Workbook_Open()"
mettra les échéances dans la feuille "opération" si la date est égale ou
dépassée de la date du jour.
Et diminue de 1 à chaque inscription

'****Dans le ThisWorbook--------

Private Sub Workbook_Open()
jj
End Sub
'--------------

'***---------Dans un module

Sub jj()
With Feuil3
For Each c In .Range("d4:d" & .[d65536].End(3).Row)
derlg = Feuil1.[a65536].End(3).Row + 1
If c <= Date And .Cells(c.Row, 3) > 0 Then
Feuil1.Range("a" & derlg).Value = .Cells(c.Row, 4).Value
.Range(.Cells(c.Row, 5), .Cells(c.Row, 12)).Copy _
Feuil1.Range("b" & derlg)
.Cells(c.Row, 3) = .Cells(c.Row, 3) - 1
If .Cells(c.Row, 3) = 0 Then MsgBox .Cells(c.Row, 7) & Chr(10) &
"Dernière écheance"
End If
Next
End With
End Sub
'-----------------------
Exemple ici:
http://cjoint.com/?buxJA10iMn


--
Salutations
JJ


"Calou" a écrit dans le message de news:
%
Bonjour,
Voilà ce qui m'amène vers vous ce soir ! Je suis en train de monter un
tableau Excel pour me permettre de suivre mon budget familial. Et puis,
étant donné qu'il y a pas mal d'opération qui revienne tous les mois,
tous
les 2 mois... Je me suis dit qu'il serait souhaitable de suivres ces
opérations dans un onglet particulier. Dans cet onglet, on retrouve les
dites opéations avec leur périodicité et la date de la prochaine
échéance.
Mais plutot que de gérer tout ça à la main, serait il possible de le
faire
faire à une macro.
Du genre, si la date de la prochaine échéance est antérieure ou égale à
la
date du jour, alors on inscrit cette opération dans l'onglet du même nom
et dans l'onglet échéance, on inscrit la date de la prochaine échéance
au
niveau de la date de l'opération et on recalcule la prochaine échaénce.

Pour davantage de clareté, je vous joins le fichier.
http://cjoint.com/?buuMdqNEi3
Etant donné mon niveau sous Excel, n'hésitez pas à détailler vos
réponses.
Un grand merci par avance pour vos lumière et votre disponibilité.
Bonne soirée
Philippe














Avatar
Jacky
Re...
Exemple : Dans la colonne Date, on a le 15/01/2008, dans périodicité nous
aurons
'Mois' et durée : 2 (donc tous les 2 mois) => la prochaine échéance sera
le 15/03/2008, et quand cette date arrivera, on retrouvera dans la colonne
date le 15/03/2008 avec comme prochaine échéance le 15/05/2008


Voici ce que devrait comporter à peu de chose près un véritable échéancier
http://cjoint.com/?bwbfZ82yBz
--
Salutations
JJ


"Calou" a écrit dans le message de news:

Bonjour,
Avant toute chose, un grand merci à Jacky pour ce travail. Par contre je
crois que je me suis mal exprimé sur la signification de la colonne
'Durée'.
Le contenu de cette ne doit pas changé car il indique à quel intervalle
cette opération doit revenir.
Exemple : Dans la colonne Date, on a le 15/01/2008, dans périodicité nous
aurons
'Mois' et durée : 2 (donc tous les 2 mois) => la prochaine échéance sera
le 15/03/2008, et quand cette date arrivera, on retrouvera dans la colonne
date le 15/03/2008 avec comme prochaine échéance le 15/05/2008 et ainsi de
suite. Malheureusement, mes connaissances ne sont pas suffisantes pour
modifier cette macro
Si ce n'est pas abusé, merci de me dire le contenu de la macro.
Un grand merci pour votre aide.
Bonne soirée.
Philippe



Avatar
Calou
Bonjour,

Encore un grand merci à toi, Jacky, pour ton travail. Merci aussi pour ta
capture d'écran d'échéancier. En fait, la colonne C n'est pas un compteur,
elle me permet de savoir à quelle fréquence une opération va revenir. J'ai
une dépense qui revient toutes les 3 semaines, il me suffira de sélectionner
dans la colonne périodicité 'Semaine' et dans la colonne 'Durée' (le terme
n'est pas précis, c'est pour cela je pense qu'il a crée la confusion chez
toi) 3 => donc toutes les 3 semaines, cette opération reviendra.

Ta macro bascule bien une opération si la date de la prochaine échéance est
inférieure ou égale à la date du jour, mais est -il possible de mettre dans
la feuille échéancier à jour :
Au basculement de la ligne de l'échéancier vers la feuille 'Opérations',
peux tu mettre la date de la prochaine échéance au niveau de la colonne
date et de cette façon, la date de la prochaine échéance se fera de façon
automatique. J'espère que mes explications seront clairs et je te remercie
beaucoup de me consacrer autant de temps.
Bonne Journée.
Philippe

"Jacky" a écrit dans le message de news:
ueD$%
Re...
Exemple : Dans la colonne Date, on a le 15/01/2008, dans périodicité nous
aurons
'Mois' et durée : 2 (donc tous les 2 mois) => la prochaine échéance sera
le 15/03/2008, et quand cette date arrivera, on retrouvera dans la
colonne
date le 15/03/2008 avec comme prochaine échéance le 15/05/2008


Voici ce que devrait comporter à peu de chose près un véritable échéancier
http://cjoint.com/?bwbfZ82yBz
--
Salutations
JJ


"Calou" a écrit dans le message de news:

Bonjour,
Avant toute chose, un grand merci à Jacky pour ce travail. Par contre je
crois que je me suis mal exprimé sur la signification de la colonne
'Durée'.
Le contenu de cette ne doit pas changé car il indique à quel intervalle
cette opération doit revenir.
Exemple : Dans la colonne Date, on a le 15/01/2008, dans périodicité nous
aurons
'Mois' et durée : 2 (donc tous les 2 mois) => la prochaine échéance sera
le 15/03/2008, et quand cette date arrivera, on retrouvera dans la
colonne
date le 15/03/2008 avec comme prochaine échéance le 15/05/2008 et ainsi
de
suite. Malheureusement, mes connaissances ne sont pas suffisantes pour
modifier cette macro
Si ce n'est pas abusé, merci de me dire le contenu de la macro.
Un grand merci pour votre aide.
Bonne soirée.
Philippe








Avatar
Jacky
RE...
Essaie comme cela
'------------
http://cjoint.com/?bwqOM8oLfx

--
Salutations
JJ


"Calou" a écrit dans le message de news:

Bonjour,

Encore un grand merci à toi, Jacky, pour ton travail. Merci aussi pour ta
capture d'écran d'échéancier. En fait, la colonne C n'est pas un compteur,
elle me permet de savoir à quelle fréquence une opération va revenir. J'ai
une dépense qui revient toutes les 3 semaines, il me suffira de
sélectionner dans la colonne périodicité 'Semaine' et dans la colonne
'Durée' (le terme n'est pas précis, c'est pour cela je pense qu'il a crée
la confusion chez toi) 3 => donc toutes les 3 semaines, cette opération
reviendra.

Ta macro bascule bien une opération si la date de la prochaine échéance
est inférieure ou égale à la date du jour, mais est -il possible de mettre
dans la feuille échéancier à jour :
Au basculement de la ligne de l'échéancier vers la feuille 'Opérations',
peux tu mettre la date de la prochaine échéance au niveau de la colonne
date et de cette façon, la date de la prochaine échéance se fera de façon
automatique. J'espère que mes explications seront clairs et je te remercie
beaucoup de me consacrer autant de temps.
Bonne Journée.
Philippe

"Jacky" a écrit dans le message de news:
ueD$%
Re...
Exemple : Dans la colonne Date, on a le 15/01/2008, dans périodicité
nous aurons
'Mois' et durée : 2 (donc tous les 2 mois) => la prochaine échéance sera
le 15/03/2008, et quand cette date arrivera, on retrouvera dans la
colonne
date le 15/03/2008 avec comme prochaine échéance le 15/05/2008


Voici ce que devrait comporter à peu de chose près un véritable
échéancier
http://cjoint.com/?bwbfZ82yBz
--
Salutations
JJ


"Calou" a écrit dans le message de news:

Bonjour,
Avant toute chose, un grand merci à Jacky pour ce travail. Par contre je
crois que je me suis mal exprimé sur la signification de la colonne
'Durée'.
Le contenu de cette ne doit pas changé car il indique à quel intervalle
cette opération doit revenir.
Exemple : Dans la colonne Date, on a le 15/01/2008, dans périodicité
nous
aurons
'Mois' et durée : 2 (donc tous les 2 mois) => la prochaine échéance sera
le 15/03/2008, et quand cette date arrivera, on retrouvera dans la
colonne
date le 15/03/2008 avec comme prochaine échéance le 15/05/2008 et ainsi
de
suite. Malheureusement, mes connaissances ne sont pas suffisantes pour
modifier cette macro
Si ce n'est pas abusé, merci de me dire le contenu de la macro.
Un grand merci pour votre aide.
Bonne soirée.
Philippe












Avatar
Calou
Salut !
Un grand merci à toi Jacky pour cette macro. J'ai beau la regarder dans tous
les sens, j'y comprend vraiment rien.... mais le principal est que cela
marche superbement.
Encore mille merci pour ton travail, ta compréhension, ta tenacité.
Bonne soirée.

Philippe


"Jacky" a écrit dans le message de news:

RE...
Essaie comme cela
'------------
http://cjoint.com/?bwqOM8oLfx

--
Salutations
JJ


"Calou" a écrit dans le message de news:

Bonjour,

Encore un grand merci à toi, Jacky, pour ton travail. Merci aussi pour ta
capture d'écran d'échéancier. En fait, la colonne C n'est pas un
compteur, elle me permet de savoir à quelle fréquence une opération va
revenir. J'ai une dépense qui revient toutes les 3 semaines, il me
suffira de sélectionner dans la colonne périodicité 'Semaine' et dans la
colonne 'Durée' (le terme n'est pas précis, c'est pour cela je pense
qu'il a crée la confusion chez toi) 3 => donc toutes les 3 semaines,
cette opération reviendra.

Ta macro bascule bien une opération si la date de la prochaine échéance
est inférieure ou égale à la date du jour, mais est -il possible de
mettre dans la feuille échéancier à jour :
Au basculement de la ligne de l'échéancier vers la feuille 'Opérations',
peux tu mettre la date de la prochaine échéance au niveau de la colonne
date et de cette façon, la date de la prochaine échéance se fera de façon
automatique. J'espère que mes explications seront clairs et je te
remercie beaucoup de me consacrer autant de temps.
Bonne Journée.
Philippe

"Jacky" a écrit dans le message de news:
ueD$%
Re...
Exemple : Dans la colonne Date, on a le 15/01/2008, dans périodicité
nous aurons
'Mois' et durée : 2 (donc tous les 2 mois) => la prochaine échéance
sera
le 15/03/2008, et quand cette date arrivera, on retrouvera dans la
colonne
date le 15/03/2008 avec comme prochaine échéance le 15/05/2008


Voici ce que devrait comporter à peu de chose près un véritable
échéancier
http://cjoint.com/?bwbfZ82yBz
--
Salutations
JJ


"Calou" a écrit dans le message de news:

Bonjour,
Avant toute chose, un grand merci à Jacky pour ce travail. Par contre
je
crois que je me suis mal exprimé sur la signification de la colonne
'Durée'.
Le contenu de cette ne doit pas changé car il indique à quel intervalle
cette opération doit revenir.
Exemple : Dans la colonne Date, on a le 15/01/2008, dans périodicité
nous
aurons
'Mois' et durée : 2 (donc tous les 2 mois) => la prochaine échéance
sera
le 15/03/2008, et quand cette date arrivera, on retrouvera dans la
colonne
date le 15/03/2008 avec comme prochaine échéance le 15/05/2008 et ainsi
de
suite. Malheureusement, mes connaissances ne sont pas suffisantes pour
modifier cette macro
Si ce n'est pas abusé, merci de me dire le contenu de la macro.
Un grand merci pour votre aide.
Bonne soirée.
Philippe