Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

VBA-Impression

10 réponses
Avatar
Pierre.M
Bonjour a tous,

Dans un grand tableau avec en colonne A des dates par ordre
chronologique, j'utilise la macro suivante (merci JB) pour n'imprimer
que la fin du tableau a partir de la date du jour.

Sub essai()
début = Application.Match(CDbl(Date) - 1, [A6:A10000], 1) + 5
If Not IsError(début) Then
If Cells(début, 1) < Date Then début = début + 1
fin = [A65000].End(xlUp).Row
ActiveSheet.PageSetup.PrintArea = Range(Cells(début, 1), Cells(fin,
12)).Address
ActiveWindow.SelectedSheets.PrintPreview
End If
End Sub

Quelqu'un saurait-il modifier cette macro pour limiter l'impression a
une seule page, mais toujours en commençant a partir de la date du jour
?

Meme question en limitant l'impression a un nombre de ligne ?

Est-ce faisable ? Merci pour votre aide et bon apres-midi.

Pierre.M

10 réponses

Avatar
Daniel.C
Bonjour.
Essaie (non testé) :

Sub essai()
début = Application.Match(CDbl(Date) - 1, [A6:A10000], 1) + 5
If Not IsError(début) Then
If Cells(début, 1) < Date Then début = début + 1
fin = [A65000].End(xlUp).Row
ActiveSheet.PageSetup.PrintArea = Range(Cells(début, 1), Cells(fin,
12)).Address
ActiveWindow.SelectedSheets.PrintOut 1, 1
End If
End Sub

Cordialement.
Daniel

Bonjour a tous,

Dans un grand tableau avec en colonne A des dates par ordre chronologique,
j'utilise la macro suivante (merci JB) pour n'imprimer que la fin du tableau
a partir de la date du jour.

Sub essai()
début = Application.Match(CDbl(Date) - 1, [A6:A10000], 1) + 5
If Not IsError(début) Then
If Cells(début, 1) < Date Then début = début + 1
fin = [A65000].End(xlUp).Row
ActiveSheet.PageSetup.PrintArea = Range(Cells(début, 1), Cells(fin,
12)).Address
ActiveWindow.SelectedSheets.PrintPreview
End If
End Sub

Quelqu'un saurait-il modifier cette macro pour limiter l'impression a une
seule page, mais toujours en commençant a partir de la date du jour ?

Meme question en limitant l'impression a un nombre de ligne ?

Est-ce faisable ? Merci pour votre aide et bon apres-midi.

Pierre.M


Avatar
isabelle
bonjour Pierre,

la syntaxe pour imprimer (From et To) est :

.PrintOut From:=1, To:=1, Copies:=1, Preview:=True, Collate:=True

et pour imprimer sur une seule page, il faut faire une mise en page :

With ActiveSheet.PageSetup
.FitToPagesWide = 1
.FitToPagesTall = 1
End With

isabelle

Pierre.M a écrit :
Bonjour a tous,

Dans un grand tableau avec en colonne A des dates par ordre
chronologique, j'utilise la macro suivante (merci JB) pour n'imprimer
que la fin du tableau a partir de la date du jour.

Sub essai()
début = Application.Match(CDbl(Date) - 1, [A6:A10000], 1) + 5
If Not IsError(début) Then
If Cells(début, 1) < Date Then début = début + 1
fin = [A65000].End(xlUp).Row
ActiveSheet.PageSetup.PrintArea = Range(Cells(début, 1), Cells(fin,
12)).Address
ActiveWindow.SelectedSheets.PrintPreview
End If
End Sub

Quelqu'un saurait-il modifier cette macro pour limiter l'impression a
une seule page, mais toujours en commençant a partir de la date du jour ?

Meme question en limitant l'impression a un nombre de ligne ?

Est-ce faisable ? Merci pour votre aide et bon apres-midi.

Pierre.M



Avatar
Pierre.M
Merci beaucoup, c'est exactement ce qu'il me fallait.
Bonne soiree.

Pierre.M




On 2009-10-23 16:51:54 +0200, Daniel.C said:

Bonjour.
Essaie (non testé) :

Sub essai()
début = Application.Match(CDbl(Date) - 1, [A6:A10000], 1) + 5
If Not IsError(début) Then
If Cells(début, 1) < Date Then début = début + 1
fin = [A65000].End(xlUp).Row
ActiveSheet.PageSetup.PrintArea = Range(Cells(début, 1), Cells(fin,
12)).Address
ActiveWindow.SelectedSheets.PrintOut 1, 1
End If
End Sub

Cordialement.
Daniel

Bonjour a tous,

Dans un grand tableau avec en colonne A des dates par ordre
chronologique, j'utilise la macro suivante (merci JB) pour n'imprimer
que la fin du tableau a partir de la date du jour.

Sub essai()
début = Application.Match(CDbl(Date) - 1, [A6:A10000], 1) + 5
If Not IsError(début) Then
If Cells(début, 1) < Date Then début = début + 1
fin = [A65000].End(xlUp).Row
ActiveSheet.PageSetup.PrintArea = Range(Cells(début, 1), Cells(fin,
12)).Address
ActiveWindow.SelectedSheets.PrintPreview
End If
End Sub

Quelqu'un saurait-il modifier cette macro pour limiter l'impression a
une seule page, mais toujours en commençant a partir de la date du jour
?

Meme question en limitant l'impression a un nombre de ligne ?

Est-ce faisable ? Merci pour votre aide et bon apres-midi.

Pierre.M




Avatar
Pierre.M
La même chose, avec les explications pour bien comprendre en prime.
Merci beaucoup.

En complement est ce qu'on pourrait grouper PrintPreview et PrintOut
1,1 pour obtenir une Preview et ensuite n'imprimer qu'une seule page ?

Pierre.M





On 2009-10-23 17:25:32 +0200, isabelle said:

bonjour Pierre,

la syntaxe pour imprimer (From et To) est :

.PrintOut From:=1, To:=1, Copies:=1, Preview:=True, Collate:=True

et pour imprimer sur une seule page, il faut faire une mise en page :

With ActiveSheet.PageSetup
.FitToPagesWide = 1
.FitToPagesTall = 1
End With

isabelle

Pierre.M a écrit :
Bonjour a tous,

Dans un grand tableau avec en colonne A des dates par ordre
chronologique, j'utilise la macro suivante (merci JB) pour n'imprimer
que la fin du tableau a partir de la date du jour.

Sub essai()
début = Application.Match(CDbl(Date) - 1, [A6:A10000], 1) + 5
If Not IsError(début) Then
If Cells(début, 1) < Date Then début = début + 1
fin = [A65000].End(xlUp).Row
ActiveSheet.PageSetup.PrintArea = Range(Cells(début, 1), Cells(fin,
12)).Address
ActiveWindow.SelectedSheets.PrintPreview
End If
End Sub

Quelqu'un saurait-il modifier cette macro pour limiter l'impression a
une seule page, mais toujours en commençant a partir de la date du jour
?

Meme question en limitant l'impression a un nombre de ligne ?

Est-ce faisable ? Merci pour votre aide et bon apres-midi.

Pierre.M




Avatar
isabelle
bonjour Pierre,

non, car on pert la main suite à un Preview:=True mais par contre il y a
déjà un bouton Print sur la page du Preview

isabelle

Pierre.M a écrit :
La même chose, avec les explications pour bien comprendre en prime.
Merci beaucoup.

En complement est ce qu'on pourrait grouper PrintPreview et PrintOut
1,1 pour obtenir une Preview et ensuite n'imprimer qu'une seule page ?

Pierre.M





On 2009-10-23 17:25:32 +0200, isabelle said:

bonjour Pierre,

la syntaxe pour imprimer (From et To) est :

.PrintOut From:=1, To:=1, Copies:=1, Preview:=True, Collate:=True

et pour imprimer sur une seule page, il faut faire une mise en page :

With ActiveSheet.PageSetup
.FitToPagesWide = 1
.FitToPagesTall = 1
End With

isabelle

Pierre.M a écrit :
Bonjour a tous,

Dans un grand tableau avec en colonne A des dates par ordre
chronologique, j'utilise la macro suivante (merci JB) pour
n'imprimer que la fin du tableau a partir de la date du jour.

Sub essai()
début = Application.Match(CDbl(Date) - 1, [A6:A10000], 1) + 5
If Not IsError(début) Then
If Cells(début, 1) < Date Then début = début + 1
fin = [A65000].End(xlUp).Row
ActiveSheet.PageSetup.PrintArea = Range(Cells(début, 1),
Cells(fin, 12)).Address
ActiveWindow.SelectedSheets.PrintPreview
End If
End Sub

Quelqu'un saurait-il modifier cette macro pour limiter l'impression
a une seule page, mais toujours en commençant a partir de la date du
jour ?

Meme question en limitant l'impression a un nombre de ligne ?

Est-ce faisable ? Merci pour votre aide et bon apres-midi.

Pierre.M








Avatar
Pierre.M
Ok, j'ai compris.

Si je voulais (simple hypothese, juste par curiosité) n'imprimer que 20
lignes depuis la date du jour, comment je completerais mon code ?

.PrintOut From=début To= ???

Un truc avec Resize ou Offset ?

Merci encore et bonne soiree.

Pierre.M







On 2009-10-23 21:51:45 +0200, isabelle said:

bonjour Pierre,

non, car on pert la main suite à un Preview:=True mais par contre il y
a déjà un bouton Print sur la page du Preview

isabelle

Pierre.M a écrit :
La même chose, avec les explications pour bien comprendre en prime.
Merci beaucoup.

En complement est ce qu'on pourrait grouper PrintPreview et PrintOut
1,1 pour obtenir une Preview et ensuite n'imprimer qu'une seule page ?

Pierre.M





On 2009-10-23 17:25:32 +0200, isabelle said:

bonjour Pierre,

la syntaxe pour imprimer (From et To) est :

.PrintOut From:=1, To:=1, Copies:=1, Preview:=True, Collate:=True

et pour imprimer sur une seule page, il faut faire une mise en page :

With ActiveSheet.PageSetup
.FitToPagesWide = 1
.FitToPagesTall = 1
End With

isabelle

Pierre.M a écrit :
Bonjour a tous,

Dans un grand tableau avec en colonne A des dates par ordre
chronologique, j'utilise la macro suivante (merci JB) pour n'imprimer
que la fin du tableau a partir de la date du jour.

Sub essai()
début = Application.Match(CDbl(Date) - 1, [A6:A10000], 1) + 5
If Not IsError(début) Then
If Cells(début, 1) < Date Then début = début + 1
fin = [A65000].End(xlUp).Row
ActiveSheet.PageSetup.PrintArea = Range(Cells(début, 1), Cells(fin,
12)).Address
ActiveWindow.SelectedSheets.PrintPreview
End If
End Sub

Quelqu'un saurait-il modifier cette macro pour limiter l'impression a
une seule page, mais toujours en commençant a partir de la date du jour
?

Meme question en limitant l'impression a un nombre de ligne ?

Est-ce faisable ? Merci pour votre aide et bon apres-midi.

Pierre.M








Avatar
isabelle
ce serait,

.PrintOut From=début To= début + 20

isabelle

Pierre.M a écrit :
Ok, j'ai compris.

Si je voulais (simple hypothese, juste par curiosité) n'imprimer que
20 lignes depuis la date du jour, comment je completerais mon code ?

.PrintOut From=début To= ???

Un truc avec Resize ou Offset ?

Merci encore et bonne soiree.

Pierre.M







On 2009-10-23 21:51:45 +0200, isabelle said:

bonjour Pierre,

non, car on pert la main suite à un Preview:=True mais par contre il
y a déjà un bouton Print sur la page du Preview

isabelle

Pierre.M a écrit :
La même chose, avec les explications pour bien comprendre en prime.
Merci beaucoup.

En complement est ce qu'on pourrait grouper PrintPreview et PrintOut
1,1 pour obtenir une Preview et ensuite n'imprimer qu'une seule page ?

Pierre.M





On 2009-10-23 17:25:32 +0200, isabelle said:

bonjour Pierre,

la syntaxe pour imprimer (From et To) est :

.PrintOut From:=1, To:=1, Copies:=1, Preview:=True, Collate:=True

et pour imprimer sur une seule page, il faut faire une mise en page :

With ActiveSheet.PageSetup
.FitToPagesWide = 1
.FitToPagesTall = 1
End With

isabelle

Pierre.M a écrit :
Bonjour a tous,

Dans un grand tableau avec en colonne A des dates par ordre
chronologique, j'utilise la macro suivante (merci JB) pour
n'imprimer que la fin du tableau a partir de la date du jour.

Sub essai()
début = Application.Match(CDbl(Date) - 1, [A6:A10000], 1) + 5
If Not IsError(début) Then
If Cells(début, 1) < Date Then début = début + 1
fin = [A65000].End(xlUp).Row
ActiveSheet.PageSetup.PrintArea = Range(Cells(début, 1),
Cells(fin, 12)).Address
ActiveWindow.SelectedSheets.PrintPreview
End If
End Sub

Quelqu'un saurait-il modifier cette macro pour limiter
l'impression a une seule page, mais toujours en commençant a
partir de la date du jour ?

Meme question en limitant l'impression a un nombre de ligne ?

Est-ce faisable ? Merci pour votre aide et bon apres-midi.

Pierre.M












Avatar
isabelle
oups, oublie ce que je viens de dire si c'est pour un nombre de lignes
dont tu parlais,

il serait plutot au niveau de la définition de la plage d'impression,

ActiveSheet.PageSetup.PrintArea = Range(Cells(début, 1), Cells(début +
20, 12)).Address

isabelle


Pierre.M a écrit :
Ok, j'ai compris.

Si je voulais (simple hypothese, juste par curiosité) n'imprimer que
20 lignes depuis la date du jour, comment je completerais mon code ?

.PrintOut From=début To= ???

Un truc avec Resize ou Offset ?

Merci encore et bonne soiree.

Pierre.M







On 2009-10-23 21:51:45 +0200, isabelle said:

bonjour Pierre,

non, car on pert la main suite à un Preview:=True mais par contre il
y a déjà un bouton Print sur la page du Preview

isabelle

Pierre.M a écrit :
La même chose, avec les explications pour bien comprendre en prime.
Merci beaucoup.

En complement est ce qu'on pourrait grouper PrintPreview et PrintOut
1,1 pour obtenir une Preview et ensuite n'imprimer qu'une seule page ?

Pierre.M





On 2009-10-23 17:25:32 +0200, isabelle said:

bonjour Pierre,

la syntaxe pour imprimer (From et To) est :

.PrintOut From:=1, To:=1, Copies:=1, Preview:=True, Collate:=True

et pour imprimer sur une seule page, il faut faire une mise en page :

With ActiveSheet.PageSetup
.FitToPagesWide = 1
.FitToPagesTall = 1
End With

isabelle

Pierre.M a écrit :
Bonjour a tous,

Dans un grand tableau avec en colonne A des dates par ordre
chronologique, j'utilise la macro suivante (merci JB) pour
n'imprimer que la fin du tableau a partir de la date du jour.

Sub essai()
début = Application.Match(CDbl(Date) - 1, [A6:A10000], 1) + 5
If Not IsError(début) Then
If Cells(début, 1) < Date Then début = début + 1
fin = [A65000].End(xlUp).Row
ActiveSheet.PageSetup.PrintArea = Range(Cells(début, 1),
Cells(fin, 12)).Address
ActiveWindow.SelectedSheets.PrintPreview
End If
End Sub

Quelqu'un saurait-il modifier cette macro pour limiter
l'impression a une seule page, mais toujours en commençant a
partir de la date du jour ?

Meme question en limitant l'impression a un nombre de ligne ?

Est-ce faisable ? Merci pour votre aide et bon apres-midi.

Pierre.M












Avatar
Pierre.M
Oui, bien-sûr !
Merci beaucoup pour toutes ces infos et bonne fin de soiree.

Pierre.M


On 2009-10-23 22:26:33 +0200, isabelle said:

ce serait,

.PrintOut From=début To= début + 20

isabelle

Pierre.M a écrit :
Ok, j'ai compris.

Si je voulais (simple hypothese, juste par curiosité) n'imprimer que 20
lignes depuis la date du jour, comment je completerais mon code ?

.PrintOut From=début To= ???

Un truc avec Resize ou Offset ?

Merci encore et bonne soiree.

Pierre.M







On 2009-10-23 21:51:45 +0200, isabelle said:

bonjour Pierre,

non, car on pert la main suite à un Preview:=True mais par contre il y
a déjà un bouton Print sur la page du Preview

isabelle

Pierre.M a écrit :
La même chose, avec les explications pour bien comprendre en prime.
Merci beaucoup.

En complement est ce qu'on pourrait grouper PrintPreview et PrintOut
1,1 pour obtenir une Preview et ensuite n'imprimer qu'une seule page ?

Pierre.M





On 2009-10-23 17:25:32 +0200, isabelle said:

bonjour Pierre,

la syntaxe pour imprimer (From et To) est :

.PrintOut From:=1, To:=1, Copies:=1, Preview:=True, Collate:=True

et pour imprimer sur une seule page, il faut faire une mise en page :

With ActiveSheet.PageSetup
.FitToPagesWide = 1
.FitToPagesTall = 1
End With

isabelle

Pierre.M a écrit :
Bonjour a tous,

Dans un grand tableau avec en colonne A des dates par ordre
chronologique, j'utilise la macro suivante (merci JB) pour n'imprimer
que la fin du tableau a partir de la date du jour.

Sub essai()
début = Application.Match(CDbl(Date) - 1, [A6:A10000], 1) + 5
If Not IsError(début) Then
If Cells(début, 1) < Date Then début = début + 1
fin = [A65000].End(xlUp).Row
ActiveSheet.PageSetup.PrintArea = Range(Cells(début, 1), Cells(fin,
12)).Address
ActiveWindow.SelectedSheets.PrintPreview
End If
End Sub

Quelqu'un saurait-il modifier cette macro pour limiter l'impression a
une seule page, mais toujours en commençant a partir de la date du jour
?

Meme question en limitant l'impression a un nombre de ligne ?

Est-ce faisable ? Merci pour votre aide et bon apres-midi.

Pierre.M












Avatar
Pierre.M
OK, je teste ça aussi.
Merci




On 2009-10-23 22:30:47 +0200, isabelle said:

oups, oublie ce que je viens de dire si c'est pour un nombre de lignes
dont tu parlais,

il serait plutot au niveau de la définition de la plage d'impression,

ActiveSheet.PageSetup.PrintArea = Range(Cells(début, 1), Cells(début +
20, 12)).Address

isabelle


Pierre.M a écrit :
Ok, j'ai compris.

Si je voulais (simple hypothese, juste par curiosité) n'imprimer que 20
lignes depuis la date du jour, comment je completerais mon code ?

.PrintOut From=début To= ???

Un truc avec Resize ou Offset ?

Merci encore et bonne soiree.

Pierre.M







On 2009-10-23 21:51:45 +0200, isabelle said:

bonjour Pierre,

non, car on pert la main suite à un Preview:=True mais par contre il y
a déjà un bouton Print sur la page du Preview

isabelle

Pierre.M a écrit :
La même chose, avec les explications pour bien comprendre en prime.
Merci beaucoup.

En complement est ce qu'on pourrait grouper PrintPreview et PrintOut
1,1 pour obtenir une Preview et ensuite n'imprimer qu'une seule page ?

Pierre.M





On 2009-10-23 17:25:32 +0200, isabelle said:

bonjour Pierre,

la syntaxe pour imprimer (From et To) est :

.PrintOut From:=1, To:=1, Copies:=1, Preview:=True, Collate:=True

et pour imprimer sur une seule page, il faut faire une mise en page :

With ActiveSheet.PageSetup
.FitToPagesWide = 1
.FitToPagesTall = 1
End With

isabelle

Pierre.M a écrit :
Bonjour a tous,

Dans un grand tableau avec en colonne A des dates par ordre
chronologique, j'utilise la macro suivante (merci JB) pour n'imprimer
que la fin du tableau a partir de la date du jour.

Sub essai()
début = Application.Match(CDbl(Date) - 1, [A6:A10000], 1) + 5
If Not IsError(début) Then
If Cells(début, 1) < Date Then début = début + 1
fin = [A65000].End(xlUp).Row
ActiveSheet.PageSetup.PrintArea = Range(Cells(début, 1), Cells(fin,
12)).Address
ActiveWindow.SelectedSheets.PrintPreview
End If
End Sub

Quelqu'un saurait-il modifier cette macro pour limiter l'impression a
une seule page, mais toujours en commençant a partir de la date du jour
?

Meme question en limitant l'impression a un nombre de ligne ?

Est-ce faisable ? Merci pour votre aide et bon apres-midi.

Pierre.M