Bernard Marcelly a écrit :
Le 2005-04-06 14:12, Emmanuel S. a écrit :Ah, oui, comme ça aussi. Moi je fais clic-droit sur l'onglet de la feuille que je veux copier, puis Déplacer/Copier la feuille et je sélectionne mon document 2. Je peux même choisir la position où sera copiée la feuille. Si un copier-coller convient, on peut le programmer mais cela nécessite plusieurs étapes.Merci Bernard, oui, j'ai essayé comme ça. Mais ça ne copie pas le style de la feuille (donc, en-têtes justement, puis zones d'impression, bordures ...). Ce que j'ai trouvé comme solution, c'est de faire une copie de mon document 1 avec StoreToURL, j'obtient donc document 2 auquel je suprime tous ce qui ne m'interresse plus feuilles, macros, (boite de dialogue j'y arrive pas), il me reste plus que la ou les feuilles que je voulais copier. Pour ce que j'ai à faire, ça pourrait aller, mais la méthode est lourde ; mon document 1 contient au moins 15 feuilles et 3 modules basic, et je veux seulement copier 1 à 3 feuilles dans un nouveau document 2. Puis si l'on a un document 2 qui contient déjà des feuilles et auquel on veut ajouter une autre feuille du document 1, ma solution ne marche pas !! Sinon, l'enregistrement de macros m'a renvoyé : Sub Main rem ---------------------------------------------------------------------- rem define variables dim document as object dim dispatcher as object rem ---------------------------------------------------------------------- rem get access to the document document = ThisComponent.CurrentController.Frame dispatcher = createUnoService("com.sun.star.frame.DispatchHelper") rem ---------------------------------------------------------------------- dim args1(2) as new com.sun.star.beans.PropertyValue args1(0).Name = "DocName" args1(0).Value = "Document 2" args1(1).Name = "Index" args1(1).Value = 65535 args1(2).Name = "Copy" args1(2).Value = true 'Xray.Xray dispatcher '.executeDispatch 'ThisComponent.CurrentController.Frame.move 'dispatcher dispatcher.executeDispatch(document, ".uno:Move", "", 0, args1()) end sub J'utilise donc : dispatcher.executeDispatch(document, ".uno:Move", "", 0, args1()) dans ma macro pour copier une feuille, mais cela implique que Document 1 soit ouvert sur la feuille qui m'interresse ! Or si j'ouvre ce Document 1 sur cette feuille qui m'interresse avec la propriété Hidden à true, ça ne marche plus ! Bref, galère ... Puis je n'ai absolument rien trouvé dans l'API sur ce "Move", est-ce normal ? Merci ... --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] |