Alejandro Rivas escribió:
Saludos.

Necesito ayuda para hacer lo siguiente:
Hay dos hojas abiertas y luego con la macro de una abro otro. En total 3.
a) Cómo podría pasar entre la ventana de un archivo y otro
b) Cómo podría insertar la letra "A" en la celda A1 de los tres archivos
abiertos.

Sub RevisaArchivos
Dim oDoc, document, Oarchivo3
Dim archivo3
Dim oDesk


oDoc=Thiscomponent
document   = ThisComponent.CurrentController.Frame
archivo3="file:///DATA/EXMAY1.SXC"
  oDesk = createUnoService("com.sun.star.frame.Desktop")
  Dim NoArg()
Oarchivo3=oDesk.loadComponentFromURL(archivo3,"_blank",0,Array())
oDoc.CurrentController.Frame.ContainerWindow.toFront() ' no funciona '' se queda el botón de la ventana parpadeando sin salir al frente
'' oDoc.CurrentController.Frame.Activate() ' igual efecto
msgbox oDoc.Sheets(2).Name ' Pero si se muestra el nombre de la Hoja2 ''del archivo de la macro



end sub


Gracias anticipadas

Escribio: Ariel Constenla-Haile <[EMAIL PROTECTED]> a Fri,
04 May 2007 20:26:37 -0300 # Alejandro Rivas escribió:
# > Saludos
# > # > Espero que la pase bien. # > # > Me atrevo a escribirle y solicito disculpas por este atrevimiento. # # está todo bien, y además puedes tratarme de "tú" :) # # > Sucede que he leido el documento que me refirió y por mi poca experiencia,
# aún
# > no le extraigo el provecho y la potencialidad que tiene.
# # Te recomiendo que vuelvas a leer por lo menos el capítulo *5.
# Explicación y ejemplo preliminares*, de la introducción, porque tiene un
# ejemplo paso a paso simple y claro (creo) que corrige ciertos errores
# que he visto en tu macro
# # Además, en la *tabla 1* hay vínculos a la referencia API para cada
# servicio que se emplea para crear los modelos de los controles. Para
# saber las propiedades de cada objeto necesitarás consultar la referencia
# API.
# # Si tengo tiempo, agregaré una tabla con las equivalencias entre los
# acontecimientos de cada control (diálogo Propiedades - Acontecimientos)
# y las interfaces y métodos de la API.
# # En la página
# http://www.arielconstenlahaile.com.ar/ooo/calc.php
# # he agregado un ejemplo
#
http://www.arielconstenlahaile.com.ar/ooo/ARIEL_OOoBASIC_EjercicioCombobox.ods
# # que envío a tu dirección en formato SXC # # Te adjunto también una versión CHM de la referencia de la API (no
# incluye la Developer's Guide, así que los enlaces no conducen a nada).
# Tiene búsqueda de texto completo pero no hice ni índice de contenido ni
# de temas. Si estás en LINUX, hay programas buenos que te permiten leer
# este formato privativo de M$.
# [ES PARA USO PERSONAL: No se que tipo de licencia tenga la referencia
# API, creo que es GPL, pero por las dudas espero que no me venga a buscar
# Interpol!]
# Una vez que te acostumbres a usarla, te será de gran utilidad.
# Cabe aclarar que es para la versión OOo 2.2.0
# # > Me he permitido enviarle un adjunto para que me revise lo poquísimo que
# estoy
# > armando. Ahí, tengo dos problemas que me resulta imposible resolver:
# > 1)  Remover un cuadro, después de usado
# # en el ejemplo del documento ODS (SXC) puedes encontrar una solución # # > 2) Asignar una macro al cuadro para que luego de la selección del dato,
# sea
# > ejecutada (como lo que se programa en CuadroDeControl-- Acontecimientos --
# > DespuesDeBotónSoltado -- (o cuando el seleccionado cambia)
# # mira el ejemplo del documento ODS (SXC) # # Para dominar la configuración de acontecimientos mediante la API
# necesitarás conocer las interfaces listeners que soporta cada modelo, y
# los métodos de cada interfaz, además de saber cómo interceptarlos.
# # En los ejemplos de la tabla 1 de mi borrador sobre formularios
# encontrarás que cada control tiene el evento más común configurado.
# Si no entiendes el código, al menos puedes sacar el nombre de la interfaz
# y sus métodos.
# # Estudia el ejemplo y dime cómo te ha ido.
# Saludos,
# Ariel
# # > Sé que falta mucho para navidad, pero "sería como solicitar un regalo a
# Santa"
# > el que me regalara unos ejemplos usando Botón de Comando, Boton de
# selección y
# > Cuadro de texto, de tal manera que aparezcan en la hoja, usarlos, luego de
# > capturar el contenido y que desaparezcan.   Y en qué cambiaría si se
# hicieran
# > en writer.
# > # > Yo trabajo con OO115 porque los equipos no tienen grandes capacidades. # > # > En espera de su ayuda, se despide muy atentamente . # > # > Alejandro Rivas (El Salvador) # > # > Hasta Luego
# > --------------------------------------------
# > !Navega con el Internet Gratis de AmNet!
# > Descarga el Programa de Instalación. # > Visítanos en www.amnetcable.com
# > Para cualquier consulta llamanos al 2207-4000
# # # #
10  Mb
--------------------------------------------
!Navega con el Internet Gratis de AmNet!
Descarga el Programa de Instalación. Visítanos en www.amnetcable.com
Para cualquier consulta llamanos al 2207-4000

Hola Alejandor,
ahora no estoy en casa, así que no podré responderte hasta la noche (de Argentina)
 Explica un poco mejor  a ver si comprendo:
*tienes un documento CALC
*desde una macro en una se sus hojas, abres otro documento
*deseas que al abirse ese doc. reciba el foco? o pasar de un documento a otro mediante macros? (pues al abrirse, automáticamente recibe el foco) *insertar la letra "A" en la celda A1 de los tres archivos abiertos: en qué hoja de cálculo? la primera de cada uno? son tres archivos o tres hojas?

Si lo explicas un poco más, podré ayudarte mejor.

Por lo pronto, si tienes varios archivos abiertos, debes enumerar los componentes del Desktop, y según su URL y tipo de archivo, guardar una referencia a ellos para poder manipularlos.

Para el FOCO debes emplear el método setFocus() de la interfaz::com::sun::star::awt:: .XWindow
http://api.openoffice.org/docs/common/ref/com/sun/star/awt/XWindow.html#setFocus

CHINO BÁSICO???

Aclarame un poco qué deseas y te envio un doc. con ejemplos

Adios

Ariel COnstenla-Haile
La Plata
Argentina

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

Responder a