Remise à zero d'une cellule au changement de mois.

  • Initiateur de la discussion Initiateur de la discussion Macpoy
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Macpoy

XLDnaute Impliqué
bonsoir le forum,

🙁 mon système de réflexion ne doit pas être au mieux de sa forme ce soir,
les quelques critères de recherches que j'ai utilisés ne m'ont pas permis de trouver une réponse à ma question :

en VBA j'ai besoin qu'une cellule s'incrémente tout au long du mois et qu'elle revienne à 1 au changement de mois.
pour l'incrémentation, je sait faire, du genre :
cells(1,2).value = cells(1,2).value + 1
mais le retour à 1 le premier jours du nouveau mois 😕

merci d'avance à ceux qui vont pouvoir redonner un peu de tonus à mon système de réflexion.
 
Re : Remise à zero d'une cellule au changement de mois.

Re le forum,
bonsoir, bhbh

ton idée de départ avec une Hypothèse supplémentaire :

Code:
If Day(Date) >= 1 Then
Feuil1.Cells(2, 1) = 1
End If

ça fonctionne super bien, j'ai vraiment le cerveau ramolli ce soir, c'était aussi simple que ça.

merci beaucoup pour le dérangement.
 
Re : Remise à zero d'une cellule au changement de mois.

Re le forum,
Re bhbh,

ouppsssss, " y à comme un défaut " !!!!!!

Code:
If Day(Date) >= 1 Then
Feuil1.Cells(2, 1) = 1
End If

j'avais pas vu plus loin que le bout de mon nez !!!!!

toutes les dates supérieures ou égale à 1 vont faire revenir à 1 ma cellule de référence ????

alors qu'elle ne doit revenir à 1 qu' au changement de mois même si j'utilise cette macro pour la première fois le 4 du nouveau mois.

imaginons que j'utilise cette macro (dans laquelle est intégrée la variable mois) le 29 février et que l'utilisation suivante ne se fasse que le 4 mars, le retour à 1 de ma cellule doit s'opérer puisque j'ai changé de mois.


autrement dit, la formule de départ
:
Code:
if day(date)=1 then......
fonctionne bien si le premier jour du mois est un jour " travaillé " mais si c'est un jour férié, est que le classeur est utilisé le 3 de ce nouveau mois alors, pas de retour à 1 de la cellule....
ce qui me fait penser qu'il ne faut pas utiliser un jour, mais le chiffre du mois pour faire fonctionner la macro. et .... la, vous l'aurez compris, je Recale......
 
Re : Remise à zero d'une cellule au changement de mois.

Re-,
le plus simple, dans ce cas, est d'utiliser une cellule d'une feuille (masquée, s'il le faut), où, dans la cellule A1, tu mets le mois en cours
si le mois change, retour à 1

Code:
Sub ess()
If Month(Date) = Sheets("Feuil2").[A1] Then
Cells(1, 2).Value = Cells(1, 2).Value + 1
Else
Cells(1, 2).Value = 1
Sheets("Feuil2").[A1] = Month(Date)
End If
End Sub
 
Re : Remise à zero d'une cellule au changement de mois.

Bonjour le forum, bhbh,

ce matin cela va mieux !!!!!
en 2 temps 3 mouvements, j'ai concocté la solution à mon PB.

il me suffisait de comparer le chiffre du mois de la date d'hier et le chiffre du mois d'aujourd'hui.
ces paramètres sont mis dans une feuille et je les comparent grâce à VBA.
Code:
If Range("MoisAujourdhui") <> Range("MoisHier") Then
Range("NumPiece") = 1
Else
Range("NumPiece") = Range("NumPiece") + 1
End If

merci pour l'aide.
bonne journée.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour