Le samedi 17 décembre 2005 à 00:06, cjfj écrivait:
> Bonsoir
> Je commence dans la programmation d'OOo 2.0 et je connais rien dans son
> langage.
> J'essaie bien de faire comme indique comme dans le bouquin, mais je
> n'obtiens pas le résultat escompté.
> Mon problème est le suivant :
> - j'ai un classeur  nommé "Planning" avec 3 feuilles nommées "Feuille 1",
> "Feuille 2" et "Feuille 3"
>     - sur la feuille 1 : des données dans les cellules A1 à E18
>     - sur la feuille 2 : des données dans les cellules A1 à F7
>    - sur la feuille 3 :  des données dans les cellules A1 à J12
> - je voudrais, à partir d'un bouton macro sur la feuille 1, imprimer toutes
> les feuilles en une seule fois et en faisant 2 exemplaires de la feuille 2
> Une âme charitable pourrait-elle me faire une petite macro pour que j'essaie
> de comprendre. J'y arrivais sans problème sous Excel, mais là, j'avoue que
> je suis largué.
>  
> Merci pour votre aide.
> Michel

J'ai fait ceic dans une macro, partant du principe que l'on ne peut modifier 
les paramètres que pour la feuille visible. je cache l'ensemble des feuilles 
puis je réaffiche une feuille je l'imprime, je la recache et je passe à la 
suivante.


Dim aPrintOpts(1) As New com.sun.star.beans.PropertyValue

Sub ImprimeTableaux()
  Dim oSheet As Object
  Dim oSheetPrev As Object
  Rem   Worksheets(MaFeuil).Activate
  cpt = 0
 
  MonNbreDeFenetre =  xDoc.Sheets.Count()
        
  Do While cpt < MonNbreDeFenetre
    Set oSheet = xDoc.Sheets(cpt)
    oSheet.IsVisible = False
    cpt = cpt + 1
  Loop
                    
  cpt = MonNbreDeFenetre-1
  Do While cpt > 0
    Set oSheet = xDoc.Sheets(cpt)
    Set oSheetPrev = xDoc.Sheets(cpt-1)
    oSheet.IsVisible = True
    aPrintOpts(0).Name = "Pages" '"CopyCount
    aPrintOpts(0).Value = 1
                                  
    aPrintOpts(1).Name = "Collate"
    aPrintOpts(1).Value = True
    xDoc.print(aPrintOpts(0))
    wait(10)
    oSheetPrev.IsVisible = True
    oSheet.IsVisible = False
    cpt = cpt - 1
  Loop 
  Do While cpt < MonNbreDeFenetre
    Set oSheet = xDoc.Sheets(cpt)
    oSheet.IsVisible = True
    cpt = cpt + 1
 Loop
End Sub
                                                                                
                                                                                
                                                          
-- 
Vincent Morlot([EMAIL PROTECTED])    L I N U X      .~.
                                                          v 
                                                        /( )\
                                                         ^ ^

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Répondre à