[RESUELTO] Cambiar ruta de guardado de documento al abrirlo

Desarrollo de Macros y programación en UNO, usar las API, llamar programas externos...
Responder
jopicach
Mensajes: 143
Registrado: Dom Nov 20, 2016 3:24 pm
Ubicación: Almería (España)

[RESUELTO] Cambiar ruta de guardado de documento al abrirlo

Mensaje por jopicach »

Hola,

He estado buscando si hay equivalente en ooOffice a la siguiente macro de Ms Office, ya que estoy haciendo el cambio:

Dim RDJ As Recordset
Set RDJ = CurrentDb().OpenRecordset("RutaDili", dbOpenDynaset) 'Tabla referenciada
'Ruta
miword.ChangeFileOpenDirectory _ 'Cambio la ruta de guardado por la que le asigno abajo
([Forms]![datos]![añodili] & "\" & [Forms]![datos]![Dili] & "-" & [Forms]![datos]![añodili])

Lo que hacía esta macro era abrír el documento word desde access y sin cuadro de diálogo, cambiaba la ruta de guardado, de forma que al darle a guardar a word salía directamente la carpeta de guardado que yo había elegido. ¿Es posible en LibreOffice? He mirado como siempre entre otras cosas en el libro de Mauricio las opciones de guardado pero no he conseguido nada. Desde Base abro un Writer y combino texto.

Esta es

Function open_doc(path) As Object 'Abre la plantilla

Dim opt(0) As New "com.sun.star.beans.PropertyValue"
Dim doc As Object

opt(0).Name = "AsTemplate"
opt(0).Value = True
'opt(0).Name = "MacroExecutionMode" 'Abre archivo habilitando las macros
'opt(0).Value = 4

'Abre el documento
open_doc = StarDesktop.loadComponentFromURL(path, "_blank", 0, opt())

'Se supone que abriría el documento y ahora vendría el cambio de la ruta de guardado a "C:\Users\DJH W10\Desktop"

End Function
-----------------------------------------------------
No se si adaptando esta macro o se puede hacer con algo mas sencillo

Sub GuardarArchivo1()
Dim oDlgGuardarArchivo as Object
Dim mDlgOpciones()
Dim mArchivo() As String
Dim mOpciones()

'Usamos el mismo servicio para abrir archivos, pues es el mismo cuadro de dialogo
oDlgGuardarArchivo = CreateUnoService ("com.sun.star.ui.dialogs.FilePicker")
'Establecemos que nos muestre el cuadro de dialogo Guardar Como con las
'casillas de verificación Autoextension y guardar con contraseña
'com.sun.star.ui.dialogs.TemplateDescription.FILESAVE_AUTOEXTENSION_PASSWORD = 2
mDlgOpciones() = Array(2)
With oDlgGuardarArchivo
'Iniciamos el cuadro de dialogo con las opciones seleccionadas
.Initialize ( mDlgOpciones() )
'Agregamos filtros de archivos
.AppendFilter( "All files (*.*)", "*.*" )
.AppendFilter( "Documento de Texto ODF (.odt)", "*.odt" )
.AppendFilter( "Hoja de calculo ODF (.ods)", "*.ods" )
End With

'Lo mostramos
If oDlgGuardarArchivo.Execute() Then
mArchivo() = oDlgGuardarArchivo.getFiles()
'Solo te muestro la ruta y nombre de archivo seleccionado
'Solo te resta guardar el archivo
MsgBox ConvertFromUrl( mArchivo(0) )
Else
MsgBox "Proceso cancelado"
End If

End Sub


__________
Un saludo.
LibreOffice versión: 7.0.5.2 (x64) - Windows 10 Pro 64 bits
jopicach
Mensajes: 143
Registrado: Dom Nov 20, 2016 3:24 pm
Ubicación: Almería (España)

Re: [RESUELTO] Cambiar ruta de guardado de documento al abri

Mensaje por jopicach »

Hola,

A través de este enlace he conseguido dar solución al problema. Lo pongo abajo por si a alguien le interesa.

https://forum.openoffice.org/es/forum/v ... 31&t=13365

Un saludo.
LibreOffice versión: 7.0.5.2 (x64) - Windows 10 Pro 64 bits
Responder