Bonjour,

Quelle est le format exact de la source à partir de laquelle les données sont 
copiée dans le presse papier ?
Est-ce un tableau Writer ?

Si c'est le cas, voici un exemple qui, je l'espère, pourrait correspondre à ce 
que vous souhaiter réaliser :

option explicit

sub main

        dim destCalc as object
        dim tmpCDoc as object
        dim tmpCController as object
        dim tmpCFrame as object
        dim dispatchHelper as object
        dim destCalcController as object
        dim destCalcFrame as object
        
        destCalc = thisComponent
        tmpCDoc = starDesktop.loadComponentFromUrl("private:factory/scalc", 
"_blank", com.sun.star.frame.FrameSearchFlag.CREATE, getHiddenArgs())
        tmpCController = tmpCDoc.currentController
        if (not isNull(tmpCController)) then
                tmpCFrame = tmpCController.frame
                dispatchHelper = 
createUnoService("com.sun.star.frame.DispatchHelper")
                dispatchHelper.executeDispatch(tmpCFrame, ".uno:Paste", "", 0, 
array())
                dispatchHelper.executeDispatch(tmpCFrame, ".uno:SelectData", 
"", 0, array())
                dispatchHelper.executeDispatch(tmpCFrame, ".uno:Copy", "", 0, 
array())
                destCalcController = destCalc.currentController
                if (not isNull(destCalcController)) then
                        
dispatchHelper.executeDispatch(destCalcController.frame, ".uno:InsertContents", 
"", 0, getPasteArgs())
                end if
        end if
        tmpCDoc.dispose()

end sub

function getPasteArgs() as variant

        dim result(5) as new com.sun.star.beans.PropertyValue
        
        result(0).Name = "Flags"
        result(0).Value = "SVD"
        result(1).Name = "FormulaCommand"
        result(1).Value = 0
        result(2).Name = "SkipEmptyCells"
        result(2).Value = false
        result(3).Name = "Transpose"
        result(3).Value = false
        result(4).Name = "AsLink"
        result(4).Value = false
        result(5).Name = "MoveMode"
        result(5).Value = 4
        
        getPasteArgs = result

end function

function getHiddenArgs() as variant

        dim result(0) as new com.sun.star.beans.PropertyValue

        result(0).name = "Hidden"
        result(0).value = true

        getHiddenArgs = result

end function

Cordialement,
T. Vataire



----- Mail Original -----
De: "PREF31 Open-Office" <open-off...@haute-garonne.pref.gouv.fr>
À: prog@fr.openoffice.org
Envoyé: Mardi 18 Mai 2010 07:48:28
Objet: Re: [prog] Copier à partir du presse-papier

-------- Message original --------
Sujet : Re: [prog] Copier à partir du presse-papier
De : Agnès Simonet <agnes.simo...@laposte.net>
Pour : prog@fr.openoffice.org
Date : 17/05/2010 21:07
> PREF31 Open-Office a écrit :
>>
>> Bonjour et merci
>>
>> Mais ce que je voudrais faire c'est un collage spécial de texte non 
>> formaté dans calc et que l'utilisateur n'ai pas à choisir les options 
>> de la boite de dialogue "import de texte" (langage, numéro de ligne, 
>> séparateurs ..)
>>
>> En enregistrant la macro cela me donne le code ci dessous mais je 
>> n'ai trouvé nulle part les noms et valeurs des arguments qui 
>> rendraient cet import silencieux pour l'utilisateur
>>
>> 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(0) as new com.sun.star.beans.PropertyValue
>> args1(0).Name = "Format"
>> args1(0).Value = 1
>>
>> dispatcher.executeDispatch(document, ".uno:PasteSpecial", "", 0, 
>> args1())
>>
>>
>> end sub
>>
>> Claude
>>
>
> Bonsoir,
>
> A propos de PasteSpecial, j'ai vu passer ça il y a quelques jours :
> http://user.services.openoffice.org/fr/forum/viewtopic.php?f=8&t=22551
>
>
> Agnès S.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: prog-unsubscr...@fr.openoffice.org
> For additional commands, e-mail: prog-h...@fr.openoffice.org
>
Bonjour,

Apparemment, ce fil évoque le même problème que je rencontre, c'est à 
dire trouver les bons arguments pour que la boite de dialogue ne 
s'affiche pas.

Merci quand même

Claude


---------------------------------------------------------------------
To unsubscribe, e-mail: prog-unsubscr...@fr.openoffice.org
For additional commands, e-mail: prog-h...@fr.openoffice.org


---------------------------------------------------------------------
To unsubscribe, e-mail: prog-unsubscr...@fr.openoffice.org
For additional commands, e-mail: prog-h...@fr.openoffice.org

Répondre à