La Web del Programador: Comunidad de Programadores
 
    Pregunta:  10640 - ORDENAR TABLA EXCEL 97 SIN ACTIVARLA VíA VBA...
Autor:  Julio Neyra
Cómo ordeno una tabla de Excel 97 en un hoja, no estando activa esta, es decir desde otra hoja o libro que no contienen la tabla. He empleado la función SORT, pero debe estar la hoja que contiene la tabla activa. ¿Hay alguna maenra de hacerlo con Visual basic para Aplicaciones?

Otra consulta:

Tengo una plantilla que contiene formularios. ¿Cómo asigno un boton de macro (que ubicaré en una barra) para que al hacer clic en él se active el formulario inicial del "libro" creado al abrir la plantilla. No era tan sencillo como pense, pues asigne a un botón la macro que grabé para activar el formulario inicial, pero cuando creo un nuevo "libro" desde la plantilla y pulso el botón de macro si muestra el formulario inicial, pero también abre el primer "libro" guardado, siempre.

Desde muchas gracias por su amable colaboración.

  Respuesta:  willan villamil
Querido Julio:

Voy a darte una idea para que solucionés tu problema.

1º pregunta.
Si queré ordenar una tabla, lógicamente debe estar activo el libro o la hoja que la contiene. Entonces es preferible enfocar el asunto bajo esta restricción.

2º pregunta.
si querés activar una plantilla desde un botón asignado a cualquier barra de herramienta,

a) podés crear una macro que abra la plantilla

  Respuesta:  willan villamil
Querido Julio:

Voy a darte una idea para que solucionés tu problema.

1º pregunta.
Si queré ordenar una tabla, lógicamente debe estar activo el libro o la hoja que la contiene. Entonces es preferible enfocar el asunto bajo esta restricción. Y si es imperativo que esté inactivo el libro que contiene la susodicha tabla podés obtener el mismo efecto de una tabla ordenada utilizando las funciones INDICE y COINCIDIR

2º pregunta.

a) podés crear una macro y asignarla a una barra de herramienta que abra la plantilla y cierre la copia del archi vo que se abra consecutivamente.

b) debés crear una macro en la misma plantilla, de modo que abra el formulario que requerís. a esta macro debés ponerle el nombre de AutoOpen.

c) asigná a un botón una macro que te muestre un cuadro de diálogo creado por vos, donde figuren varias opciones de apertura de formularios.