Paolo Mantovani ha scritto:
Ciao Giuseppe,


giuse...@iclam.it ha scritto:
Ho un foglio con parecchi pulsanti che fanno partire delle macro che
aprono files,
volevo fare in modo che chiamando la macro questa riconoscesse:

il nome o la didascalia del pulsante
(che nel mio caso e' il nome del file da aprire)

cosi' aggiungendo un pulsante con il nome corretto
potevo con una sola macro fare tutto.

Qualche idea?

Più o meno devi fare così:

supponendo che la seguente macro sia collegata all evento click
("durante l'esecuzione") di uno o più pulsanti:


Sub MyButton_click(oEvent As Object)

        Print oEvent.Source.Model.Name

End Sub



Non sono sicuro 100% del codice perchè ho scritto direttamenet
nell'email (quindi fai attenzione!) ma l'idea comunque è quella.

ciao
Paolo M
Abbinato  a questo pezzetto di codice funziona perfettamente
aprendo il file scelto!
Sia con Linux che con Windows.

Grazie!!!
Beppe


Sub MyButton_click(oEvent As Object)

   Dim parametro
   Dim aArg(0) As New com.sun.star.beans.PropertyValue
   aArg(0).Name = "nodepath"
   aArg(0).Value = "org.openoffice.Office.Paths"
oCP = CreateUnoService("com.sun.star.configuration.ConfigurationProvider")
   oCA = oCP.createInstanceWithArguments( _
     "com.sun.star.configuration.ConfigurationAccess",aArg)
   oPaths = oCA.getPropertyValue("Paths")
   oPathSubst = CreateUnoService( _
     "com.sun.star.util.PathSubstitution")
oTemplatePath = oPaths.getByName("Template") sTemplatePath = oPathSubst.substituteVariables( oTemplatePath.WritePath,True) parametro = sTemplatePath + "/" + oEvent.Source.Model.Name + ".ods"
   parametro = ConvertToUrl(parametro)
   rem msgbox parametro
   shell("soffice -n",10,parametro,FALSE)

End Sub



--
le nuvole non hanno regole,
perchè non hanno mai rinunciato
alla libertà di sognare.



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

Rispondere a