OVH Cloud OVH Cloud

nombre de page

5 réponses
Avatar
LOIC
Je sélectionne plusieurs feuilles et je voudrais récupérer le nombre total
de pages à imprimer dans une variable.

Il y ç bien la propriété &N dans les entete ou pied de pages mais ce n'est
calculé qu'a l'aperçu et on peut pas récupérer la valeur !

5 réponses

Avatar
LOIC
ActiveSheet.HPageBreaks.Count + 1

j'ai essayé avec cette fonction mais cela ne me donne que le nombre de page
pour celle en cours hors je voudrais pour toutes mais feuille sélectionné !


"LOIC" a écrit dans le message de
news:
Je sélectionne plusieurs feuilles et je voudrais récupérer le nombre total
de pages à imprimer dans une variable.

Il y ç bien la propriété &N dans les entete ou pied de pages mais ce n'est
calculé qu'a l'aperçu et on peut pas récupérer la valeur !




Avatar
michdenis
Bonjour Loic,

Essaie ceci :

'-----------------------
Dim NSh As String, Sh As Worksheet
Dim NbPages As Integer
NSh = ActiveSheet.Name

Application.ScreenUpdating = False
For Each Sh In ActiveWindow.SelectedSheets
Sh.Activate
NbPages = NbPages + ActiveSheet.HPageBreaks.Count + 1
Next
Worksheets(NSh).Activate
MsgBox NbPages & " pages à imprimer"
'-----------------------


Salutations!



"LOIC" a écrit dans le message de news:
Je sélectionne plusieurs feuilles et je voudrais récupérer le nombre total
de pages à imprimer dans une variable.

Il y ç bien la propriété &N dans les entete ou pied de pages mais ce n'est
calculé qu'a l'aperçu et on peut pas récupérer la valeur !
Avatar
papou
Bonjour
Ou sinon autre méthode :
Sub Totalpages()
Dim f As Worksheet, fct1$, fct2$, fctxl4$, NbP&
fct1 = "GET.DOCUMENT(50,"""
fct2 = """)"
NbP = 0
For Each f In Sheets
fctxl4 = fct1 & f.Name & fct2
NbP = NbP + Application.ExecuteExcel4Macro(fctxl4)
Next f
MsgBox NbP & " pages à imprimer"
End Sub

Cordialement
Pascal


"LOIC" a écrit dans le message de
news:
Je sélectionne plusieurs feuilles et je voudrais récupérer le nombre total
de pages à imprimer dans une variable.

Il y ç bien la propriété &N dans les entete ou pied de pages mais ce n'est
calculé qu'a l'aperçu et on peut pas récupérer la valeur !




Avatar
LOIC
Le soucis c'est que la liste des feuilles à imprimer est contenu dans un
list box donc comment faire pour sélectionner l'ensmeble de la listbox et
compter les pages.

la solution avec HPageBreaks me pose des soucis si j'ai des sauts de pages
verticaux par contre la solution de papou devrait me solutionner la chose il
ne me manque que la manière de définir mes sélections dans le code de papou
un ch'ti coup de pouce final serait hyper cool ;)

"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:%
Bonjour
Ou sinon autre méthode :
Sub Totalpages()
Dim f As Worksheet, fct1$, fct2$, fctxl4$, NbP&
fct1 = "GET.DOCUMENT(50,"""
fct2 = """)"
NbP = 0
For Each f In Sheets
fctxl4 = fct1 & f.Name & fct2
NbP = NbP + Application.ExecuteExcel4Macro(fctxl4)
Next f
MsgBox NbP & " pages à imprimer"
End Sub

Cordialement
Pascal


"LOIC" a écrit dans le message de
news:
Je sélectionne plusieurs feuilles et je voudrais récupérer le nombre
total


de pages à imprimer dans une variable.

Il y ç bien la propriété &N dans les entete ou pied de pages mais ce
n'est


calculé qu'a l'aperçu et on peut pas récupérer la valeur !








Avatar
papou
Dans ces conditions si listbox sur Userform modifie avec :

For i = 1 To Me.ListBox1.ListCount
fctxl4 = fct1 & ListBox1.List(i) & fct2
NbP = NbP + Application.ExecuteExcel4Macro(fctxl4)
Next i

Cordialement
Pascal

"LOIC" a écrit dans le message de
news:%
Le soucis c'est que la liste des feuilles à imprimer est contenu dans un
list box donc comment faire pour sélectionner l'ensmeble de la listbox et
compter les pages.

la solution avec HPageBreaks me pose des soucis si j'ai des sauts de pages
verticaux par contre la solution de papou devrait me solutionner la chose
il

ne me manque que la manière de définir mes sélections dans le code de
papou

un ch'ti coup de pouce final serait hyper cool ;)

"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:%
Bonjour
Ou sinon autre méthode :
Sub Totalpages()
Dim f As Worksheet, fct1$, fct2$, fctxl4$, NbP&
fct1 = "GET.DOCUMENT(50,"""
fct2 = """)"
NbP = 0
For Each f In Sheets
fctxl4 = fct1 & f.Name & fct2
NbP = NbP + Application.ExecuteExcel4Macro(fctxl4)
Next f
MsgBox NbP & " pages à imprimer"
End Sub

Cordialement
Pascal


"LOIC" a écrit dans le message de
news:
Je sélectionne plusieurs feuilles et je voudrais récupérer le nombre
total


de pages à imprimer dans une variable.

Il y ç bien la propriété &N dans les entete ou pied de pages mais ce
n'est


calculé qu'a l'aperçu et on peut pas récupérer la valeur !