Condition macro excel

Résolu/Fermé
shuya89 Messages postés 470 Date d'inscription jeudi 22 mai 2008 Statut Membre Dernière intervention 28 novembre 2014 - 24 juin 2008 à 09:10
shuya89 Messages postés 470 Date d'inscription jeudi 22 mai 2008 Statut Membre Dernière intervention 28 novembre 2014 - 25 juin 2008 à 08:59
Bonjour,
Voila j'aimerais creer une macro qui verifieras la date du jour au lancement du classeur et qui si on est le 1er de chaque moi il enregitr la page sous un nom et/ou il l'imprime comment faire ?

merci de vos futur reponses
cordialement shuya
A voir également:

15 réponses

lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
24 juin 2008 à 09:20
Bonjour,
Savoir si jourdu mois = 1
If Day(Date)=1 then
.....
....
End If
A+
0
shuya89 Messages postés 470 Date d'inscription jeudi 22 mai 2008 Statut Membre Dernière intervention 28 novembre 2014 39
24 juin 2008 à 10:01
et comment je fait pour enregistrer sous un nom nouveaux chaque fois ( par exemple le nom du fichier : save010708.xls) et pour imprimer?
0
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
24 juin 2008 à 10:38
documente toi sur les fonctions ci-dessous... (Sélectionner et taper F1)
    ActiveWorkbook.SaveAs ("Nouveau Nom")
    Sheets("Feuil3").Select
    ActiveSheet.PrintOut

A+
0
shuya89 Messages postés 470 Date d'inscription jeudi 22 mai 2008 Statut Membre Dernière intervention 28 novembre 2014 39
24 juin 2008 à 11:18
pour recuperer le mis je fais : mois = month(Date)?
0
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
24 juin 2008 à 11:23
Tout a fait...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
shuya89 Messages postés 470 Date d'inscription jeudi 22 mai 2008 Statut Membre Dernière intervention 28 novembre 2014 39
24 juin 2008 à 11:24
mais la date va ete a quelle format ?
0
Bonjour
Dans l'activation du fichier

Private Sub Worksheet_Activate()

'la condition que tu as vu avec lermite222
if ...
...
Var_Mois = Month(Now)
Var_Annee = Year(Now)


' Pour l'enregistrement
Chem_Archive = "C:\" & Var_Annee & "-" & Var_Mois
'suppersion du message d'alerte pour forcer l'enregistrement
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Chem_Archive
Application.DisplayAlerts = True
ActiveWorkbook.Close

end if
end sub
0
shuya89 Messages postés 470 Date d'inscription jeudi 22 mai 2008 Statut Membre Dernière intervention 28 novembre 2014 39
24 juin 2008 à 11:40
la datte c quel format : - 24 juin 2008 ou 24/06/08?
0
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
24 juin 2008 à 11:44
Dans l'IDE (VBA) c'est 24/06/08, pour l'avoir 24 juin 2008 ...
dim Dt as date
Dt = Format(Date,"jjmmmmyyyy")

EDIT: petite erreur
Dt = Format(Date,"ddmmmmyyyy")
0
format de la date "24/06/2008 11:43:25"
mais si tu fais month(now()) le resultat sera "6"
0
shuya89 Messages postés 470 Date d'inscription jeudi 22 mai 2008 Statut Membre Dernière intervention 28 novembre 2014 39
24 juin 2008 à 11:49
oi donc pour avoir le moi en letre d'affichez faut que je fasse un case?
0
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
24 juin 2008 à 11:53
Si c'est pour l'afficher dans le classeur pas besoin de la modifier en VBA, suffit de formatter les cellule où tu inscrit la date..
Dans Excel.. Format >> Cellule >> Date. et choisir le format que tu veux.
0
shuya89 Messages postés 470 Date d'inscription jeudi 22 mai 2008 Statut Membre Dernière intervention 28 novembre 2014 39
24 juin 2008 à 11:58
oui mais moi je souhaite l'afficher dans un message box

d'ou ma question : peut t'on utiliser une variable créer dans une macro dans une autre macro?
0
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
24 juin 2008 à 12:09
La variable Dt doit être déclarée en entête d'un module général
exemple : Module1
et employé la ligne que j'ai mis plus haut.
Dt = Format(Date,"ddmmmmyyyy")

Msgbox Dt
ou
MsgBox Format(Date,"ddmmmmyyyy")
0
shuya89 Messages postés 470 Date d'inscription jeudi 22 mai 2008 Statut Membre Dernière intervention 28 novembre 2014 39
24 juin 2008 à 13:33
mais si je veut l'appelée dans un autre module je fait comment?
0
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
24 juin 2008 à 18:32
t'est un peu dur de la comprenette... :D
Dt = Format(Date,"ddmmmmyyyy")
0
shuya89 Messages postés 470 Date d'inscription jeudi 22 mai 2008 Statut Membre Dernière intervention 28 novembre 2014 39
24 juin 2008 à 19:03
donc par exemple si je le créer dans le module 1 , dans le module 2 pour l'appelée je fait Dt = ....
???

( je debute faut m'excuser =))
0
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 190
24 juin 2008 à 19:12
La variable Dt doit être déclarée en entête d'un module général
N'importe que module, petite précision...
Public Dt as Date
Public au lieu de Dim
Si tu met Dim, ce ne serra visible que dans le module où la déclaration est mise
En Public, Tout les modules, Standard ou feuille, verrons cette variable.
0
shuya89 Messages postés 470 Date d'inscription jeudi 22 mai 2008 Statut Membre Dernière intervention 28 novembre 2014 39
25 juin 2008 à 08:59
a oki merci
voila c ce que je voulais savoir
0