Que tal david, gracias por subirlo ahora si todos podran darle una mirada y
comentar. Lamentablemente necesitamos mas gurus en OOoBasic yo no soy guru ni
de VBA ni de OOoBasic aunque he estudiado algo del codigo de OOoBasic.

El error porviene de la forma como esta estructurado los documentos en OOo.
Veras todos parten de este sistema:
vnd.sun.star.script
por ejemplo si quieres modificar alguna accion en el documento debes poner la
ruta:
com.sun.star.sheet.SpreadsheetDocument
En este documento explica como cargas el documento (como si fuera un
hypervinculo) despues cargas la ruta al documento dentro de un objeto y
finalmente puedes manejar la 'hoja de calculo' y empezar a a manipular
informacion de las celdas.

La otra manera es puede estudiar como se hizo la macro y re-crearla en
OpenOffice.org, recuerda que hay un macro-recorder y te puedes apoyar para ver
como se dirige a una celda o se extrae un valor.

Un simple copy paste por ejemplo, genero este codigo, el cual se puede
ver mucha
paja y creo que por eso intimida un poco. Pero recuerda que estos procesos hay
mucho codigo y comentarios que no se necesitan. Podemos ver que las cosas
importantes (y que nos intersan es.. extraer un valor de una celda el cual
podemos ver en el 'sub copyPaste' y vemos los comandos UNO importantes:
- ".uno:GoToCell"
- ".uno:Copy"
- ".uno:Paste"

Y podemos ver como extrajimos el valor de la celda cuando usamos
argumentos con
metodos (Name y Value).

En tu macro creo que solo necesitamos referenciar el valor por lo que la ruta
seria distinta (en los comandos uno) pero experimentando con el macro recorder
podras ver como se hace. Cuando tenga mas tiempo quizas pueda llegar a una
respuesta mas directa.


REM  *****  BASIC  *****

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 ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:InsertPara", "", 0, Array())

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:InsertPara", "", 0, Array())


end sub

sub Insert_DocInfo0
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 = "FontHeight.Height"
args1(0).Value = 13
args1(1).Name = "FontHeight.Prop"
args1(1).Value = 100
args1(2).Name = "FontHeight.Diff"
args1(2).Value = 0

dispatcher.executeDispatch(document, ".uno:FontHeight", "", 0, args1())


end sub


sub copyPaste
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 = "ToPoint"
args1(0).Value = "$A$1"

dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args1())

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Copy", "", 0, Array())

rem ----------------------------------------------------------------------
dim args3(0) as new com.sun.star.beans.PropertyValue
args3(0).Name = "ToPoint"
args3(0).Value = "$C$7"

dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args3())

rem ----------------------------------------------------------------------
dispatcher.executeDispatch(document, ".uno:Paste", "", 0, Array())


end sub

Quoting David González González <[EMAIL PROTECTED]>:

Ya lo he subido.

Gracias, un saludo,
    David.

Alexandro Colorado escribió:

Quoting David González González <[EMAIL PROTECTED]>:

Hola,
    estoy intentando migrar a gente de mi empresa a OpenOffice, pero me
encuentro con el problema de que existen en la organización numerosas
hojas de excell con macros que dan errores al ejecutarse.  Una de las
que estoy intentando ejecutar da el siguiente error:  Se ha producido un
error de marco de programación la ejecutar el comando
vnd.sun.star.script:Standard.posicion_inicial?language=Basic&location=document 
escrito en Basic.   Mensaje: BasicProviderImpl::getScript:
noscript!

Pueden ayudarme con este error?

Un saludo,
    David.


Creo que necesitariamos ver el documento/codigo etc. Puedes subirlo en esta
direccion:
http://www.oooxtremo.org/index.php?option=com_wrapper&Itemid=8







--
Alexandro Colorado
Co-Leader of OpenOffice.org Spanish
http://es.openoffice.org/


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

Responder a