Je n'ai toujours pas réussi à trouver. Quoi que j'essaie, j'arrive bien à imprimer les feuilles 2 à 3 une par une, mais toutes les trois en une seule fois.
J'ai pourtant lu et relu le chapitre conscré à l'impression. Je dois certainement passer à côté de quelque chose.
Michel


De : cjfj [mailto:[EMAIL PROTECTED]
Envoyé : mardi 20 décembre 2005 16:14
À : prog@fr.openoffice.org
Objet : [prog] Programmation Calc

J'ai 4 feuilles dans mon classeur (Feuille1 à Feuille4)
Je ne souhaite imprimer que les feuilles 2 à 4, mais en une seule fois.
Voilà ce que j'ai écri. Si j'imprimer chaque feuille séparément ça fonctionne, mais dès que j'essai d'imprimer les 3, il n'y a que la première qui s'imprime.
Pouvez-vous me dire ce qui ne va pas. J'ai beau lire et relire votre livre, je ne trouve pas.... Et dire que ce ne sont que mes débuts en OOBasci ; ça promet.
Merci
 
Sub ImprimerTout
ImprimerFeuille2
ImprimerFeuille3
ImprimerFeuille4
End Sub
 
 
Sub ImprimerFeuille2
Dim monDocument As Object
Dim mesFeuilles As Object
Dim maFeuille As Object
Dim maZone As Object
Dim Props() As New com.sun.star.beans.PropertyValue
Dim adrZones() As New com.sun.star.table.CellRangeAddress
monDocument = thisComponent
mesFeuilles = monDocument.Sheets
maFeuille = mesFeuilles.getByName("Feuille2")
monDocument.currentController.activeSheet = maFeuille
maZone = maFeuille.getCellRangeByName("A1:J32")
monDocument.currentController.Select(maZone)
adrZones() = maZone.RangeAddress
maFeuille.PrintAreas = adrZones()
monDocument.Print(Props())
End Sub
 
Sub ImprimerFeuille3
Dim monDocument As Object
Dim mesFeuilles As Object
Dim maFeuille As Object
Dim maZone As Object
Dim Props() As New com.sun.star.beans.PropertyValue
Dim adrZones() As New com.sun.star.table.CellRangeAddress
monDocument = thisComponent
mesFeuilles = monDocument.Sheets
maFeuille = mesFeuilles.getByName("Feuille3")
monDocument.currentController.activeSheet = maFeuille
maZone = maFeuille.getCellRangeByName("A1:N25")
monDocument.currentController.Select(maZone)
adrZones() = maZone.RangeAddress
maFeuille.PrintAreas = adrZones()
monDocument.Print(Props())
End Sub
 
Sub ImprimerFeuille4
Dim monDocument As Object
Dim mesFeuilles As Object
Dim maFeuille As Object
Dim maZone As Object
Dim Props() As New com.sun.star.beans.PropertyValue
Dim adrZones() As New com.sun.star.table.CellRangeAddress
monDocument = thisComponent
mesFeuilles = monDocument.Sheets
maFeuille = mesFeuilles.getByName("Feuille COG 2")
monDocument.currentController.activeSheet = maFeuille
maZone = maFeuille.getCellRangeByName("A1:H18")
monDocument.currentController.Select(maZone)
adrZones() = maZone.RangeAddress
maFeuille.PrintAreas = adrZones()
monDocument.Print(Props())
End Sub
 

Répondre à