Ajout de somme en fonction des dates
Résolu/Fermé
joda
-
25 avril 2012 à 10:16
ccm81 Messages postés 10851 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 16 avril 2024 - 25 avril 2012 à 21:16
ccm81 Messages postés 10851 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 16 avril 2024 - 25 avril 2012 à 21:16
A voir également:
- Ajout de somme en fonction des dates
- Fonction si et - Guide
- Fonction somme excel - Guide
- Somme si couleur - Guide
- Somme si date inférieur à aujourd'hui ✓ - Forum Excel
- Problème somme excel 0 ✓ - Forum Excel
6 réponses
eljojo_e
Messages postés
1155
Date d'inscription
lundi 10 mai 2010
Statut
Membre
Dernière intervention
14 octobre 2022
152
25 avril 2012 à 10:44
25 avril 2012 à 10:44
bonjour,
Dsl mais je ne comprend pas du tout ce que tu veux ^^ pourrais-tu être plus précis ???
Cordialement,
Dsl mais je ne comprend pas du tout ce que tu veux ^^ pourrais-tu être plus précis ???
Cordialement,
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
25 avril 2012 à 14:23
25 avril 2012 à 14:23
Bonjour Joda, el_jojo
à installer dans le module feuille concernée
à installer dans le module feuille concernée
Private Sub Worksheet_Activate() If Day(Range("A2")) = 1 Then Range("D2") = Range("D2") + 50 End Sub
Linukcs
Messages postés
79
Date d'inscription
lundi 12 octobre 2009
Statut
Membre
Dernière intervention
10 octobre 2012
14
25 avril 2012 à 14:28
25 avril 2012 à 14:28
Re,
Votre script possède un problème élémentaire...
En effet, il s'active à chaque ouverture . Si jamais il est ouvert plus d'une fois, l'augmentation prendra effet autant de fois !
Votre script possède un problème élémentaire...
En effet, il s'active à chaque ouverture . Si jamais il est ouvert plus d'une fois, l'augmentation prendra effet autant de fois !
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
25 avril 2012 à 15:11
25 avril 2012 à 15:11
re Joda
en tenant compte de la remarque + haut
mettre une cellule (ici F2 mais... à ton choix)
j'ai testé ça marche
pour installer:
tu fais un copier de la macro après avoir choisi ta cellule tampon
clic droit sur le nom de l'onglet
visualiser le code
copier
End Sub
en tenant compte de la remarque + haut
mettre une cellule (ici F2 mais... à ton choix)
Private Sub Worksheet_Activate() If Range("F2") <> Range("A2") And Day(Range("A2")) = 1 Then Range("D2") = Range("D2") + 50 Range("F2") = Range("A2") End If
j'ai testé ça marche
pour installer:
tu fais un copier de la macro après avoir choisi ta cellule tampon
clic droit sur le nom de l'onglet
visualiser le code
copier
End Sub
re Michel_m
Si j'ai bien compris la cellule F2 correspond à la date d'aujourd'hui et qui ne doit plus bouger.
En D2 ma somme et en A2 la date au format (maintenant)
Merci
Si j'ai bien compris la cellule F2 correspond à la date d'aujourd'hui et qui ne doit plus bouger.
En D2 ma somme et en A2 la date au format (maintenant)
Merci
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 303
25 avril 2012 à 17:08
25 avril 2012 à 17:08
Non la date F2 va se mettre au 1° du mois
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ccm81
Messages postés
10851
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
16 avril 2024
2 404
25 avril 2012 à 21:16
25 avril 2012 à 21:16
bonjour à tous
j'ai un peu modifié la solution de michel (salutations) pour éviter une cellule supplémentaire (et activé la macro à l'ouverture du classeur)
bonne soirée
j'ai un peu modifié la solution de michel (salutations) pour éviter une cellule supplémentaire (et activé la macro à l'ouverture du classeur)
Const celDate = "A2" Const celTotal = "D2" Const supp = 50 ' somme à ajouter Const nuJour = 25 ' quantième qui va activer l'ajout de supp (mettre 1) Sub MAJ2() Dim d As Date d = Range(celDate).Value If d = Date Then Exit Sub Range(celDate).Value = Date If Day(Range(celDate).Value) = nuJour Then Range(celTotal) = Range(celTotal) + supp End If End Sub Private Sub Workbook_Open() Call MAJ2 End Sub
bonne soirée
Linukcs
Messages postés
79
Date d'inscription
lundi 12 octobre 2009
Statut
Membre
Dernière intervention
10 octobre 2012
14
25 avril 2012 à 11:18
25 avril 2012 à 11:18
Bonjour,
Moi au contraire, j'ai parfaitement compris.
Voici la configuration qu'il te faut :
Comprenons le fonctionnement.
A2 et B2 sont des valeurs numériques représentant chacune une date. La fonction ANNEE sert à récupérer le numéro de l'année. La fonction MOIS sert à récupérer le numéro du mois. La formule magique pour avoir un multiple supplémentaire chaque 1er du mois est donc : (Année courante - Année de Base) X 12 + Mois courant - Mois de base.
Exemple :
Date de base : 1er Janvier 2010
Date d'aujourd'hui : 25 Avril 2012
Nombre de mois : (2012 - 2010) x 12 + 4 - 1 = 24 mois + 3 mois = 27 mois écoulés.
Maintenant que nous avons le nombre de mois, il suffit d'ajouter d'autres cases :
Vous avez en A3 votre premier montant, en B3 le montant à ajouter chaque mois et en C3 la somme du montant de base plus la somme ajoutée chaque mois depuis la date de base.
Exemple :
Somme de base : 2500
Somme à ajouter chaque mois : 100
Total = 2500 + 100 X 27 = 2500 + 2700 = 5200
Bonne chance !
Note : Pour connaitre la somme ajouter il suffit d'isoler dans une case la valeur :
"=B3*C2".
Moi au contraire, j'ai parfaitement compris.
Voici la configuration qu'il te faut :
A2 : Date de démarrage au format jj/mm/aaaa (peut ne pas être le 1er du mois) B2 : Insérer "=AUJOURDHUI()" C2 : Insérer "=(ANNEE(B2) - ANNEE(A2))*12+MOIS(B2)-MOIS(A2)"
Comprenons le fonctionnement.
A2 et B2 sont des valeurs numériques représentant chacune une date. La fonction ANNEE sert à récupérer le numéro de l'année. La fonction MOIS sert à récupérer le numéro du mois. La formule magique pour avoir un multiple supplémentaire chaque 1er du mois est donc : (Année courante - Année de Base) X 12 + Mois courant - Mois de base.
Exemple :
Date de base : 1er Janvier 2010
Date d'aujourd'hui : 25 Avril 2012
Nombre de mois : (2012 - 2010) x 12 + 4 - 1 = 24 mois + 3 mois = 27 mois écoulés.
Maintenant que nous avons le nombre de mois, il suffit d'ajouter d'autres cases :
A3 : Somme de base B3 : Somme à ajouter chaque mois C3 : Insérer "=A3 + (B3 * C2) "
Vous avez en A3 votre premier montant, en B3 le montant à ajouter chaque mois et en C3 la somme du montant de base plus la somme ajoutée chaque mois depuis la date de base.
Exemple :
Somme de base : 2500
Somme à ajouter chaque mois : 100
Total = 2500 + 100 X 27 = 2500 + 2700 = 5200
Bonne chance !
Note : Pour connaitre la somme ajouter il suffit d'isoler dans une case la valeur :
"=B3*C2".
Linukcs
Messages postés
79
Date d'inscription
lundi 12 octobre 2009
Statut
Membre
Dernière intervention
10 octobre 2012
14
25 avril 2012 à 14:30
25 avril 2012 à 14:30
@joda,
Dans tous les cas, il vous faut une date de base si vous le faites en Excel. Si besoin, ce sera la date d'aujourd'hui (mais rentrée en dur), pour que la prochaine connexion fasse automatiquement les ajouts nécessaires.
Tenez-moi au courant ! :)
Dans tous les cas, il vous faut une date de base si vous le faites en Excel. Si besoin, ce sera la date d'aujourd'hui (mais rentrée en dur), pour que la prochaine connexion fasse automatiquement les ajouts nécessaires.
Tenez-moi au courant ! :)