Condition macro excel

Résolu
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
Configuration: Windows XP
Firefox 2.0.0.13

15 réponses

  1. Contributeur
    Bonjour,
    Savoir si jourdu mois = 1
    If Day(Date)=1 then
    .....
    ....
    End If
    A+
    0
    1. et comment je fait pour enregistrer sous un nom nouveaux chaque fois ( par exemple le nom du fichier : save010708.xls) et pour imprimer?
      0
      1. Contributeur
        documente toi sur les fonctions ci-dessous... (Sélectionner et taper F1)
            ActiveWorkbook.SaveAs ("Nouveau Nom")
            Sheets("Feuil3").Select
            ActiveSheet.PrintOut

        A+
        0
        1. pour recuperer le mis je fais : mois = month(Date)?
          0
          1. Contributeur
            Tout a fait...
            0
        2. mais la date va ete a quelle format ?
          0
          1. 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
            1. la datte c quel format : - 24 juin 2008 ou 24/06/08?
              0
              1. Contributeur
                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
            2. format de la date "24/06/2008 11:43:25"
              mais si tu fais month(now()) le resultat sera "6"
              0
              1. oi donc pour avoir le moi en letre d'affichez faut que je fasse un case?
                0
                1. Contributeur
                  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
              2. 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
                1. Contributeur
                  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
                  1. mais si je veut l'appelée dans un autre module je fait comment?
                    0
                    1. Contributeur
                      t'est un peu dur de la comprenette... :D
                      Dt = Format(Date,"ddmmmmyyyy")
                      0
                  2. 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
                    1. Contributeur
                      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
                      1. a oki merci
                        voila c ce que je voulais savoir
                        0