Comment faire simple ?

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 !

Cutbill1234

XLDnaute Nouveau
Bonjour à tous,

Voila j'ai une feuille excel qui porte la date du jour. Comment puis-je faire pour imprimer cette même feuille avec des dates différentes (demain, après-demain) sans avoir à remodifier manuellement la date (jour, mois, année) car cela est long quand je dois en préparer pour un mois.

D'avance merci

Cutbill

Message édité par: cutbill1234, à: 07/11/2005 16:36

Message édité par: cutbill1234, à: 07/11/2005 16:38
 
Salut Cutbill,

tu peux mettre dans ta cellule :

=AUJOURDHUI()

Ca te reprend la date système de l'ordinateur

Et donc ça change tous les jours.

Est-ce bien ça que tu veux ?

@+

Edition : tu as aussi un raccourci clavier pour mettre la date d'aujourdhui : CTRL et ;

Message édité par: tibo, à: 07/11/2005 17:06
 
Bonsoir Tibo,

Non ce n'est pas ce que je souhaite faire.
Ce que je veux c'est pouvoir préparer des feuilles d'avance sans avoir à remodifier à chaque fois la date.

Lundi 07 Novembre 2005
Mardi 08 Novembre 2005
Mercredi 09 Novembre 2005
...
Tu vois c'est super chiant à faire, surtout qu'il faut que j'imprime à chaque fois avant de modifier la date.
Donc un système qui automatiserais le truc serait super bienvenue.

D'avance merci
 
Resalut Cutbill,

J'ai pensé à une solution faite avec une macro (issue de l'enregistreur de macro)

Le principe :

En A1 : =AUJOURDHUI()
En B1 : 1
En C1 : 1

La macro fait un Copier / Collage Spécial Addition de C1 sur B1 puis déclenche l'impression. La cellule B1 devient un compteur qui incrémente la date.

Attention à la macro, ce n'est pas ma spécialité donc les critiques sont bienvenues...

Bonne soirée

Message édité par: tibo, à: 07/11/2005 18:03
 
Bonsoir,

Voici une macro qui incrémente la cellule A1 depuis la date du jour et imprime à chaque changement :

Code:
Sub PrintDate()
    Dim I As Integer
    For I = 0 To 3
        Range('A1') = Date + I
        ActiveSheet.PrintOut
    Next I
End Sub

Dans cet exemple on va imprimer 7 fois !
Tu peux changer la valeur en disant

for I = 0 to x

Message édité par: soft, à: 07/11/2005 18:13
 
Bonjour,

Les méthodes de Tibo et Tonyo ne me conviennent pas.
Par contre la méthode de Soft est bien mais j'ai encore quelques petites question :
- il n'imprime pas 7 fois mais 4
- je voudrais la date sous la forme Lundi 07 Novembre 2005
- Comment débuter à la date de mon choix Mardi 01 Décembre 2005

D'avance merci

Cutbill
 
Re-bonjour,
Effectivement j'avais limité à 4 pour mon test et j'ai oublié de modifier après.

donc remplacer le To 3 par To x
(x = valeur désitée -1 puisqu'on commence à 0).

Pour le format, il peut se définir avec le menu Format/Cellule...

Pour commencer avec la date de ton choix (j'aurais du commencer par là ...), voilà une nouvelle version de la macro (cette fois 7 jours depuis la date choisie !):

Code:
Sub PrintDate()
    Dim I As Integer, D
    D = InputBox('Commencez l'impression avec la date :', 'Entrée date début', Date)
    If IsDate(D) = False Then
        MsgBox 'Date non valide'
        Exit Sub
    End If
    For I = 0 To 6
        Range('A1') = CDate(D) + 1
        ActiveSheet.PrintOut
    Next I
End Sub

Message édité par: soft, à: 07/11/2005 18:40
 
Une petite amélioration, qui permettra d'indiquer successivement la date de début (par défaut date du jour) et la date de fin (par défaut + 10 jours).

Code:
Sub PrintDate()
    Dim I As Integer, D, Dfin, DPrint As Date
    D = InputBox('Commencez l'impression avec la date :', 'Entrée date début', Date)
    If IsDate(D) = False Then
        MsgBox 'Date non valide'
        Exit Sub
    End If
    Dfin = InputBox('Finir l'impression avec la date :', 'Entrée date fin', Date + 10)
    If IsDate(Dfin) = False Then
        MsgBox 'Date non valide'
        Exit Sub
    End If
    While DPrint <> Dfin
        DPrint = CDate(D) + I
        Range('A1') = CDate(DPrint)
        ActiveSheet.PrintOut
        I = I + 1
    Wend
End Sub

Message édité par: soft, à: 07/11/2005 18:49
 
Bonjour soft, le forum,

Tout d'abord désolé pour cette réponse tardive.
Je voulais remercier soft car ce que tu as fais est vraiment génial, c'est exactement ce que je recherchais.
Toutefois s'il y avait un moyen d'éliminer les dimanches ce serait parfait, mais j'en demande peut-être un peu trop. Après tout je peux bien jeter les feuilles imprimer avec les dates des dimanches.

Merci à tous

Cutbill
 
Bonjour,
La même chose, mais sans les dimanches

Code:
Sub PrintDate()
    Dim I As Integer, D, Dfin, DPrint As Date
    D = InputBox('Commencez l'impression avec la date :', 'Entrée date début', Date)
    If IsDate(D) = False Then
        MsgBox 'Date non valide'
        Exit Sub
    End If
    Dfin = InputBox('Finir l'impression avec la date :', 'Entrée date fin', Date + 10)
    If IsDate(Dfin) = False Then
        MsgBox 'Date non valide'
        Exit Sub
    End If
    While DPrint <> Dfin
        DPrint = CDate(D) + I
        If Weekday(DPrint) <> 1 Then
            Range('A1') = CDate(DPrint)
            ActiveSheet.PrintOut
        End If
        I = I + 1
    Wend
End Sub
 
- 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

Réponses
8
Affichages
1 K
Retour