Bonjour à toutes et tous.
Voici ma problématique.
Depuis un fichier de travail assez volumineux, je désirerais faire la chose
suivante :
- En cliquant sur un bouton (ça je sais le créer et affecter le code derrière)
- Sélectionner les plages A1 - H60 et L1 - H60 des onglets 1 et 2 (leurs
petits noms est stats dossiers et stats incidents). Ce qui fait 2 plages par
onglets soit en tout 4 plages.
- Créer un nouveau fichier avec ces 4 plages pour en faire 4 pages pour
pouvoir imprimer le tout dans un fichier PDF.
Ou alors si pas besoin de créer un nouveau fichier mais de faire en sorte
que l'on puisse puisse tout simplement imprimer ces 4 plages en 4 pages.
J'espère avoir été assez clair.
Merci par avance.
Frank.
Bonjour à toutes et tous.
Voici ma problématique.
Depuis un fichier de travail assez volumineux, je désirerais faire la chose
suivante :
- En cliquant sur un bouton (ça je sais le créer et affecter le code derrière)
- Sélectionner les plages A1 - H60 et L1 - H60 des onglets 1 et 2 (leurs
petits noms est stats dossiers et stats incidents). Ce qui fait 2 plages par
onglets soit en tout 4 plages.
- Créer un nouveau fichier avec ces 4 plages pour en faire 4 pages pour
pouvoir imprimer le tout dans un fichier PDF.
Ou alors si pas besoin de créer un nouveau fichier mais de faire en sorte
que l'on puisse puisse tout simplement imprimer ces 4 plages en 4 pages.
J'espère avoir été assez clair.
Merci par avance.
Frank.
Bonjour à toutes et tous.
Voici ma problématique.
Depuis un fichier de travail assez volumineux, je désirerais faire la chose
suivante :
- En cliquant sur un bouton (ça je sais le créer et affecter le code derrière)
- Sélectionner les plages A1 - H60 et L1 - H60 des onglets 1 et 2 (leurs
petits noms est stats dossiers et stats incidents). Ce qui fait 2 plages par
onglets soit en tout 4 plages.
- Créer un nouveau fichier avec ces 4 plages pour en faire 4 pages pour
pouvoir imprimer le tout dans un fichier PDF.
Ou alors si pas besoin de créer un nouveau fichier mais de faire en sorte
que l'on puisse puisse tout simplement imprimer ces 4 plages en 4 pages.
J'espère avoir été assez clair.
Merci par avance.
Frank.
Bonjour Frank,
'------------------------------------
Sub test()
Dim A As Integer
Dim Arr(), Arr1(), Wk As Workbook, Sh As Worksheet
'Nom des feuilles
Arr = Array("stats dossiers", "stats incidents")
'Plage de cellules pour chaque feuille
Arr1 = Array("A1:H60", "L1:H60")
Application.ScreenUpdating = False
'Nouveau classeur avec une feuille
Set Wk = Workbooks.Add(-4167)
'Ajout de 3 feuilles(besoin de 4 feuilles au total
For A = 1 To 3
Wk.Worksheets.Add
Next
A = 0
'Choix de l'imprimante : PDF
Application.Dialogs(xlDialogPrinterSetup).Show
'Copie des 4 plages dans une feuille séparée
'du nouveau classeur
For Each elt In Arr
For Each plg In Arr1
A = A + 1
ThisWorkbook.Worksheets(elt).Range(plg).Copy _
Wk.Worksheets(A).Range("A1")
'Lorsque la macro sera testée,
'Change PrintPreview pour Printout
'Regarde dans l'aide pour définir les paramètres
'de printout si nécessaire.
Wk.Worksheets(A).PrintPreview
Next
Next
'Suppression du Classeur sans sauvegarde si nécessaire
Wk.Close False
Application.ScreenUpdating = True
End Sub
'------------------------------------
"Frank" a écrit dans le message de groupe de discussion
:
Bonjour à toutes et tous.
Voici ma problématique.
Depuis un fichier de travail assez volumineux, je désirerais faire la chose
suivante :
- En cliquant sur un bouton (ça je sais le créer et affecter le code derrière)
- Sélectionner les plages A1 - H60 et L1 - H60 des onglets 1 et 2 (leurs
petits noms est stats dossiers et stats incidents). Ce qui fait 2 plages par
onglets soit en tout 4 plages.
- Créer un nouveau fichier avec ces 4 plages pour en faire 4 pages pour
pouvoir imprimer le tout dans un fichier PDF.
Ou alors si pas besoin de créer un nouveau fichier mais de faire en sorte
que l'on puisse puisse tout simplement imprimer ces 4 plages en 4 pages.
J'espère avoir été assez clair.
Merci par avance.
Frank.
Bonjour Frank,
'------------------------------------
Sub test()
Dim A As Integer
Dim Arr(), Arr1(), Wk As Workbook, Sh As Worksheet
'Nom des feuilles
Arr = Array("stats dossiers", "stats incidents")
'Plage de cellules pour chaque feuille
Arr1 = Array("A1:H60", "L1:H60")
Application.ScreenUpdating = False
'Nouveau classeur avec une feuille
Set Wk = Workbooks.Add(-4167)
'Ajout de 3 feuilles(besoin de 4 feuilles au total
For A = 1 To 3
Wk.Worksheets.Add
Next
A = 0
'Choix de l'imprimante : PDF
Application.Dialogs(xlDialogPrinterSetup).Show
'Copie des 4 plages dans une feuille séparée
'du nouveau classeur
For Each elt In Arr
For Each plg In Arr1
A = A + 1
ThisWorkbook.Worksheets(elt).Range(plg).Copy _
Wk.Worksheets(A).Range("A1")
'Lorsque la macro sera testée,
'Change PrintPreview pour Printout
'Regarde dans l'aide pour définir les paramètres
'de printout si nécessaire.
Wk.Worksheets(A).PrintPreview
Next
Next
'Suppression du Classeur sans sauvegarde si nécessaire
Wk.Close False
Application.ScreenUpdating = True
End Sub
'------------------------------------
"Frank" <Frank@discussions.microsoft.com> a écrit dans le message de groupe de discussion
: 29A22461-AB56-4BEA-8C64-0D87A06793B1@microsoft.com...
Bonjour à toutes et tous.
Voici ma problématique.
Depuis un fichier de travail assez volumineux, je désirerais faire la chose
suivante :
- En cliquant sur un bouton (ça je sais le créer et affecter le code derrière)
- Sélectionner les plages A1 - H60 et L1 - H60 des onglets 1 et 2 (leurs
petits noms est stats dossiers et stats incidents). Ce qui fait 2 plages par
onglets soit en tout 4 plages.
- Créer un nouveau fichier avec ces 4 plages pour en faire 4 pages pour
pouvoir imprimer le tout dans un fichier PDF.
Ou alors si pas besoin de créer un nouveau fichier mais de faire en sorte
que l'on puisse puisse tout simplement imprimer ces 4 plages en 4 pages.
J'espère avoir été assez clair.
Merci par avance.
Frank.
Bonjour Frank,
'------------------------------------
Sub test()
Dim A As Integer
Dim Arr(), Arr1(), Wk As Workbook, Sh As Worksheet
'Nom des feuilles
Arr = Array("stats dossiers", "stats incidents")
'Plage de cellules pour chaque feuille
Arr1 = Array("A1:H60", "L1:H60")
Application.ScreenUpdating = False
'Nouveau classeur avec une feuille
Set Wk = Workbooks.Add(-4167)
'Ajout de 3 feuilles(besoin de 4 feuilles au total
For A = 1 To 3
Wk.Worksheets.Add
Next
A = 0
'Choix de l'imprimante : PDF
Application.Dialogs(xlDialogPrinterSetup).Show
'Copie des 4 plages dans une feuille séparée
'du nouveau classeur
For Each elt In Arr
For Each plg In Arr1
A = A + 1
ThisWorkbook.Worksheets(elt).Range(plg).Copy _
Wk.Worksheets(A).Range("A1")
'Lorsque la macro sera testée,
'Change PrintPreview pour Printout
'Regarde dans l'aide pour définir les paramètres
'de printout si nécessaire.
Wk.Worksheets(A).PrintPreview
Next
Next
'Suppression du Classeur sans sauvegarde si nécessaire
Wk.Close False
Application.ScreenUpdating = True
End Sub
'------------------------------------
"Frank" a écrit dans le message de groupe de discussion
:
Bonjour à toutes et tous.
Voici ma problématique.
Depuis un fichier de travail assez volumineux, je désirerais faire la chose
suivante :
- En cliquant sur un bouton (ça je sais le créer et affecter le code derrière)
- Sélectionner les plages A1 - H60 et L1 - H60 des onglets 1 et 2 (leurs
petits noms est stats dossiers et stats incidents). Ce qui fait 2 plages par
onglets soit en tout 4 plages.
- Créer un nouveau fichier avec ces 4 plages pour en faire 4 pages pour
pouvoir imprimer le tout dans un fichier PDF.
Ou alors si pas besoin de créer un nouveau fichier mais de faire en sorte
que l'on puisse puisse tout simplement imprimer ces 4 plages en 4 pages.
J'espère avoir été assez clair.
Merci par avance.
Frank.
| Effectivement, cela fonctionne sauf que 4 fichiers sont créés. J'aurais
| aimés qu'il n'y en ai qu'un seul qui regroupe le tout.
Seulement 1 nouveau classeur est créé avec 4 feuilles
chaque feuille contient la copie d'une plage de cellules que tu
as désignéé.
Si tu obtiens 4 classeurs différents, prière de m'indiquer
à quel endroit dans la procédure cela se produit !
| Effectivement, cela fonctionne sauf que 4 fichiers sont créés. J'aurais
| aimés qu'il n'y en ai qu'un seul qui regroupe le tout.
Seulement 1 nouveau classeur est créé avec 4 feuilles
chaque feuille contient la copie d'une plage de cellules que tu
as désignéé.
Si tu obtiens 4 classeurs différents, prière de m'indiquer
à quel endroit dans la procédure cela se produit !
| Effectivement, cela fonctionne sauf que 4 fichiers sont créés. J'aurais
| aimés qu'il n'y en ai qu'un seul qui regroupe le tout.
Seulement 1 nouveau classeur est créé avec 4 feuilles
chaque feuille contient la copie d'une plage de cellules que tu
as désignéé.
Si tu obtiens 4 classeurs différents, prière de m'indiquer
à quel endroit dans la procédure cela se produit !
| Effectivement, cela fonctionne sauf que 4 fichiers sont créés. J'aurais
| aimés qu'il n'y en ai qu'un seul qui regroupe le tout.
Seulement 1 nouveau classeur est créé avec 4 feuilles
chaque feuille contient la copie d'une plage de cellules que tu
as désignéé.
Si tu obtiens 4 classeurs différents, prière de m'indiquer
à quel endroit dans la procédure cela se produit !
| Effectivement, cela fonctionne sauf que 4 fichiers sont créés. J'aurais
| aimés qu'il n'y en ai qu'un seul qui regroupe le tout.
Seulement 1 nouveau classeur est créé avec 4 feuilles
chaque feuille contient la copie d'une plage de cellules que tu
as désignéé.
Si tu obtiens 4 classeurs différents, prière de m'indiquer
à quel endroit dans la procédure cela se produit !
| Effectivement, cela fonctionne sauf que 4 fichiers sont créés. J'aurais
| aimés qu'il n'y en ai qu'un seul qui regroupe le tout.
Seulement 1 nouveau classeur est créé avec 4 feuilles
chaque feuille contient la copie d'une plage de cellules que tu
as désignéé.
Si tu obtiens 4 classeurs différents, prière de m'indiquer
à quel endroit dans la procédure cela se produit !
Et si tu modifies comme ceci :
Sub test()
Dim A As Integer
Dim Arr(), Arr1(), Wk As Workbook, Sh As Worksheet
'Nom des feuilles
Arr = Array(1, 2)
'Plage de cellules pour chaque feuille
Arr1 = Array("A1:H60", "L1:H60")
Application.ScreenUpdating = False
'Nouveau classeur avec une feuille
Set Wk = Workbooks.Add(-4167)
'Ajout de 3 feuilles(besoin de 4 feuilles au total
For A = 1 To 3
Wk.Worksheets.Add
Next
A = 0
'Copie des 4 plages dans une feuille séparée
'du nouveau classeur
For Each elt In Arr
For Each plg In Arr1
A = A + 1
ThisWorkbook.Worksheets(elt).Range(plg).Copy _
Wk.Worksheets(A).Range("A1")
Next
Next
'Choix de l'imprimante : PDF
Application.Dialogs(xlDialogPrinterSetup).Show
'Impression du fichier
Wk.PrintOut
'Suppression du Classeur sans sauvegarde si nécessaire
Wk.Close False
Application.ScreenUpdating = True
End Sub
"Frank" a écrit dans le message de groupe de discussion
:
Désolé, je me suis mal fait comprendre.
Il y a bien un seul classeur avec 4 feuilles.
Mon seul problème étant que si je veux imprimer en pdf, cela me créé 4
fichiers pdf différent et non pas un seul avec mes 4 feuilles à la suite.
Je me rends compte en écrivant qu'il faudrait alors que j'utilise Impression
"Classeur entier" pour tout avoir dedans.
Merci beaucoup.
"MichDenis" a écrit :
> | Effectivement, cela fonctionne sauf que 4 fichiers sont créés. J'aurais
> | aimés qu'il n'y en ai qu'un seul qui regroupe le tout.
>
> Seulement 1 nouveau classeur est créé avec 4 feuilles
> chaque feuille contient la copie d'une plage de cellules que tu
> as désignéé.
> Si tu obtiens 4 classeurs différents, prière de m'indiquer
> à quel endroit dans la procédure cela se produit !
>
>
>
>
Et si tu modifies comme ceci :
Sub test()
Dim A As Integer
Dim Arr(), Arr1(), Wk As Workbook, Sh As Worksheet
'Nom des feuilles
Arr = Array(1, 2)
'Plage de cellules pour chaque feuille
Arr1 = Array("A1:H60", "L1:H60")
Application.ScreenUpdating = False
'Nouveau classeur avec une feuille
Set Wk = Workbooks.Add(-4167)
'Ajout de 3 feuilles(besoin de 4 feuilles au total
For A = 1 To 3
Wk.Worksheets.Add
Next
A = 0
'Copie des 4 plages dans une feuille séparée
'du nouveau classeur
For Each elt In Arr
For Each plg In Arr1
A = A + 1
ThisWorkbook.Worksheets(elt).Range(plg).Copy _
Wk.Worksheets(A).Range("A1")
Next
Next
'Choix de l'imprimante : PDF
Application.Dialogs(xlDialogPrinterSetup).Show
'Impression du fichier
Wk.PrintOut
'Suppression du Classeur sans sauvegarde si nécessaire
Wk.Close False
Application.ScreenUpdating = True
End Sub
"Frank" <Frank@discussions.microsoft.com> a écrit dans le message de groupe de discussion
: 884ECDE8-FA14-4434-AF97-438581256F27@microsoft.com...
Désolé, je me suis mal fait comprendre.
Il y a bien un seul classeur avec 4 feuilles.
Mon seul problème étant que si je veux imprimer en pdf, cela me créé 4
fichiers pdf différent et non pas un seul avec mes 4 feuilles à la suite.
Je me rends compte en écrivant qu'il faudrait alors que j'utilise Impression
"Classeur entier" pour tout avoir dedans.
Merci beaucoup.
"MichDenis" a écrit :
> | Effectivement, cela fonctionne sauf que 4 fichiers sont créés. J'aurais
> | aimés qu'il n'y en ai qu'un seul qui regroupe le tout.
>
> Seulement 1 nouveau classeur est créé avec 4 feuilles
> chaque feuille contient la copie d'une plage de cellules que tu
> as désignéé.
> Si tu obtiens 4 classeurs différents, prière de m'indiquer
> à quel endroit dans la procédure cela se produit !
>
>
>
>
Et si tu modifies comme ceci :
Sub test()
Dim A As Integer
Dim Arr(), Arr1(), Wk As Workbook, Sh As Worksheet
'Nom des feuilles
Arr = Array(1, 2)
'Plage de cellules pour chaque feuille
Arr1 = Array("A1:H60", "L1:H60")
Application.ScreenUpdating = False
'Nouveau classeur avec une feuille
Set Wk = Workbooks.Add(-4167)
'Ajout de 3 feuilles(besoin de 4 feuilles au total
For A = 1 To 3
Wk.Worksheets.Add
Next
A = 0
'Copie des 4 plages dans une feuille séparée
'du nouveau classeur
For Each elt In Arr
For Each plg In Arr1
A = A + 1
ThisWorkbook.Worksheets(elt).Range(plg).Copy _
Wk.Worksheets(A).Range("A1")
Next
Next
'Choix de l'imprimante : PDF
Application.Dialogs(xlDialogPrinterSetup).Show
'Impression du fichier
Wk.PrintOut
'Suppression du Classeur sans sauvegarde si nécessaire
Wk.Close False
Application.ScreenUpdating = True
End Sub
"Frank" a écrit dans le message de groupe de discussion
:
Désolé, je me suis mal fait comprendre.
Il y a bien un seul classeur avec 4 feuilles.
Mon seul problème étant que si je veux imprimer en pdf, cela me créé 4
fichiers pdf différent et non pas un seul avec mes 4 feuilles à la suite.
Je me rends compte en écrivant qu'il faudrait alors que j'utilise Impression
"Classeur entier" pour tout avoir dedans.
Merci beaucoup.
"MichDenis" a écrit :
> | Effectivement, cela fonctionne sauf que 4 fichiers sont créés. J'aurais
> | aimés qu'il n'y en ai qu'un seul qui regroupe le tout.
>
> Seulement 1 nouveau classeur est créé avec 4 feuilles
> chaque feuille contient la copie d'une plage de cellules que tu
> as désignéé.
> Si tu obtiens 4 classeurs différents, prière de m'indiquer
> à quel endroit dans la procédure cela se produit !
>
>
>
>
Et si tu modifies comme ceci :
Sub test()
Dim A As Integer
Dim Arr(), Arr1(), Wk As Workbook, Sh As Worksheet
'Nom des feuilles
Arr = Array(1, 2)
'Plage de cellules pour chaque feuille
Arr1 = Array("A1:H60", "L1:H60")
Application.ScreenUpdating = False
'Nouveau classeur avec une feuille
Set Wk = Workbooks.Add(-4167)
'Ajout de 3 feuilles(besoin de 4 feuilles au total
For A = 1 To 3
Wk.Worksheets.Add
Next
A = 0
'Copie des 4 plages dans une feuille séparée
'du nouveau classeur
For Each elt In Arr
For Each plg In Arr1
A = A + 1
ThisWorkbook.Worksheets(elt).Range(plg).Copy _
Wk.Worksheets(A).Range("A1")
Next
Next
'Choix de l'imprimante : PDF
Application.Dialogs(xlDialogPrinterSetup).Show
'Impression du fichier
Wk.PrintOut
'Suppression du Classeur sans sauvegarde si nécessaire
Wk.Close False
Application.ScreenUpdating = True
End Sub
"Frank" a écrit dans le message de groupe de
discussion
:
Désolé, je me suis mal fait comprendre.
Il y a bien un seul classeur avec 4 feuilles.
Mon seul problème étant que si je veux imprimer en pdf, cela me créé 4
fichiers pdf différent et non pas un seul avec mes 4 feuilles à la suite.
Je me rends compte en écrivant qu'il faudrait alors que j'utilise Impression
"Classeur entier" pour tout avoir dedans.
Merci beaucoup.
"MichDenis" a écrit :
> | Effectivement, cela fonctionne sauf que 4 fichiers sont créés. J'aurais
> | aimés qu'il n'y en ai qu'un seul qui regroupe le tout.
>
> Seulement 1 nouveau classeur est créé avec 4 feuilles
> chaque feuille contient la copie d'une plage de cellules que tu
> as désignéé.
> Si tu obtiens 4 classeurs différents, prière de m'indiquer
> à quel endroit dans la procédure cela se produit !
>
>
>
>
Et si tu modifies comme ceci :
Sub test()
Dim A As Integer
Dim Arr(), Arr1(), Wk As Workbook, Sh As Worksheet
'Nom des feuilles
Arr = Array(1, 2)
'Plage de cellules pour chaque feuille
Arr1 = Array("A1:H60", "L1:H60")
Application.ScreenUpdating = False
'Nouveau classeur avec une feuille
Set Wk = Workbooks.Add(-4167)
'Ajout de 3 feuilles(besoin de 4 feuilles au total
For A = 1 To 3
Wk.Worksheets.Add
Next
A = 0
'Copie des 4 plages dans une feuille séparée
'du nouveau classeur
For Each elt In Arr
For Each plg In Arr1
A = A + 1
ThisWorkbook.Worksheets(elt).Range(plg).Copy _
Wk.Worksheets(A).Range("A1")
Next
Next
'Choix de l'imprimante : PDF
Application.Dialogs(xlDialogPrinterSetup).Show
'Impression du fichier
Wk.PrintOut
'Suppression du Classeur sans sauvegarde si nécessaire
Wk.Close False
Application.ScreenUpdating = True
End Sub
"Frank" <Frank@discussions.microsoft.com> a écrit dans le message de groupe de
discussion
: 884ECDE8-FA14-4434-AF97-438581256F27@microsoft.com...
Désolé, je me suis mal fait comprendre.
Il y a bien un seul classeur avec 4 feuilles.
Mon seul problème étant que si je veux imprimer en pdf, cela me créé 4
fichiers pdf différent et non pas un seul avec mes 4 feuilles à la suite.
Je me rends compte en écrivant qu'il faudrait alors que j'utilise Impression
"Classeur entier" pour tout avoir dedans.
Merci beaucoup.
"MichDenis" a écrit :
> | Effectivement, cela fonctionne sauf que 4 fichiers sont créés. J'aurais
> | aimés qu'il n'y en ai qu'un seul qui regroupe le tout.
>
> Seulement 1 nouveau classeur est créé avec 4 feuilles
> chaque feuille contient la copie d'une plage de cellules que tu
> as désignéé.
> Si tu obtiens 4 classeurs différents, prière de m'indiquer
> à quel endroit dans la procédure cela se produit !
>
>
>
>
Et si tu modifies comme ceci :
Sub test()
Dim A As Integer
Dim Arr(), Arr1(), Wk As Workbook, Sh As Worksheet
'Nom des feuilles
Arr = Array(1, 2)
'Plage de cellules pour chaque feuille
Arr1 = Array("A1:H60", "L1:H60")
Application.ScreenUpdating = False
'Nouveau classeur avec une feuille
Set Wk = Workbooks.Add(-4167)
'Ajout de 3 feuilles(besoin de 4 feuilles au total
For A = 1 To 3
Wk.Worksheets.Add
Next
A = 0
'Copie des 4 plages dans une feuille séparée
'du nouveau classeur
For Each elt In Arr
For Each plg In Arr1
A = A + 1
ThisWorkbook.Worksheets(elt).Range(plg).Copy _
Wk.Worksheets(A).Range("A1")
Next
Next
'Choix de l'imprimante : PDF
Application.Dialogs(xlDialogPrinterSetup).Show
'Impression du fichier
Wk.PrintOut
'Suppression du Classeur sans sauvegarde si nécessaire
Wk.Close False
Application.ScreenUpdating = True
End Sub
"Frank" a écrit dans le message de groupe de
discussion
:
Désolé, je me suis mal fait comprendre.
Il y a bien un seul classeur avec 4 feuilles.
Mon seul problème étant que si je veux imprimer en pdf, cela me créé 4
fichiers pdf différent et non pas un seul avec mes 4 feuilles à la suite.
Je me rends compte en écrivant qu'il faudrait alors que j'utilise Impression
"Classeur entier" pour tout avoir dedans.
Merci beaucoup.
"MichDenis" a écrit :
> | Effectivement, cela fonctionne sauf que 4 fichiers sont créés. J'aurais
> | aimés qu'il n'y en ai qu'un seul qui regroupe le tout.
>
> Seulement 1 nouveau classeur est créé avec 4 feuilles
> chaque feuille contient la copie d'une plage de cellules que tu
> as désignéé.
> Si tu obtiens 4 classeurs différents, prière de m'indiquer
> à quel endroit dans la procédure cela se produit !
>
>
>
>