Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

La valeur d'une cellule remise à "1" a chaque mois

  • Initiateur de la discussion Emmanuel
  • Date de début
E

Emmanuel

Guest
Bonjour le Forum


J'ai un fichier (".XLT") qui a une incrementation auto d'un n° a chaque ouverture.(c'est un model de facturation)
Exemple: en A1 =aujourdhui() avec un format date " yy mm"; en A2 l'incrementation auto.

ma recherche est, comment faire pour que ma cellule "A2"fasse une remise à 1 a chaque changement de mois?

Merci pour vos aides

Bon Week end
Emmanuel
 
R

Ronan

Guest
Bonjour,

Essaie ceci dans le module WORKBOOK OPEN

Private Sub Workbook_Open()
If Sheets("feuil1").Range("b1").Value <= Date Then
Sheets("feuil1").Range("a2").Value = 1
Sheets("feuil1").Range("b1").Value = DateSerial(Year(Date), Month(Date) + 1, 1)
Else
Sheets("feuil1").Range("a2").Value = Sheets("feuil1").Range("a2").Value + 1
End If
End Sub

Je pense que pour la bonne marche de la mise à 1 du compteur, il faut inscrire dans ton classeur, à l'endroit ou tu veux, la date butoire d'initialisation du compteur, c.a.d., le 01 du mois suivant (date qui sera modifiée par le programme lors de la remise à 1 du compteur)

Dans l'exemple ci-dessus, il y a dans la cellule B1 la prochaine date de mise à 1 du compteur.
A l'ouverture du classeur, le programme vérifie la date inscrite en B1 par rapport à la date du jour.
Si la date est supérieure à la date du jour, le programme incrémente le compteur.
Si la date est inférieure ou égale à la date du jour, il réinitialise le compteur à 1 et incrémente d'1 mois la date inscrite dans la cellule B1.

Espérant avoir répondu à ta question.

@+

Ronan
 
E

Emmanuel

Guest
Re salut Ronan

Cela fonctionne très bien
il n'y a que cette ligne
Sheets("feuil1").Range("a2").Value = 1

puisque nous avons une ligne en dessous qui incremente +1 a chaque ouverture donc ".value = 0" et là impecable

Merci

A bientôt
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…