Como hacer macros para ocultar-mostrar columnas?
Reglas del Foro
Los moderadores podrían mover los temas creados aquí a un foro más apropiado.
Si usted publicó aquí y no encuentra el tema, puede buscar sus mensajes haciendo clic en la opción «Buscar sus mensajes» que se encuentra justo debajo de la cabecera de la página, junto al panel de control de usuario y al acceso a sus mensajes privados.
Los moderadores podrían mover los temas creados aquí a un foro más apropiado.
Si usted publicó aquí y no encuentra el tema, puede buscar sus mensajes haciendo clic en la opción «Buscar sus mensajes» que se encuentra justo debajo de la cabecera de la página, junto al panel de control de usuario y al acceso a sus mensajes privados.
Como hacer macros para ocultar-mostrar columnas?
Hola, estoy preparando una hoja que aun no termino donde los datos abarcan muchas columnas deben ser como 300, por lo tanto se me complica para moverme de un sector a otro.
Entonces quisiera saber si es posible hacer varias macros para MOSTRAR-OCULTAR columnas, y si es posible que estas macros estén asociadas a un botón MOSTRAR-OCULTAR o a 2 por macro, o lo que sea, cosa que sea fácil ejecutarlas.
En esta hoja que estoy creando tengo un área que es fija, y arriba de este área me gustaría tener los botones, ya que siempre esta visible aunque me desplace por la hoja.
Voy a subir un ejemplo donde hay 3 áreas (verde, rojo y azul) y 9 sub-áreas también marcadas en colores distintos, también a todas las áreas las agrupe con AGRUPAR ESQUEMA (herramienta que desconocía hasta hace poco) solo para probar, pero no me daría resultados en la hoja que preparo ya que es mucho mas larga.
Hoy intente grabar una macro, fui a Grabar macro, seleccione ciertas columnas y las oculte, finalice la grabación, pero cuando quise ejecutarla (después de volver a mostrar el área que oculte), solo me oculto la columna sobre la cual estaba posicionado el cursor.
Lo que quisiera es una orientación con algún área de este ejemplo (ya que no entiendo nada de macros), y luego veré como lo hago yo mismo cuando termine la otra hoja. Supongo que si tengo una macro para MOSTRAR-OCULTAR un sector de una hoja, deberé copiar el código y reemplazar la parte del área de columnas para MOSTRAR-OCULTAR otro orea.
Otra cosa, para que la macro este siempre en la hoja debería grabarse en la misma hoja no?
Bueno, espero que se haya entendido y agradezco cualquier consejo.
Saludos!
Entonces quisiera saber si es posible hacer varias macros para MOSTRAR-OCULTAR columnas, y si es posible que estas macros estén asociadas a un botón MOSTRAR-OCULTAR o a 2 por macro, o lo que sea, cosa que sea fácil ejecutarlas.
En esta hoja que estoy creando tengo un área que es fija, y arriba de este área me gustaría tener los botones, ya que siempre esta visible aunque me desplace por la hoja.
Voy a subir un ejemplo donde hay 3 áreas (verde, rojo y azul) y 9 sub-áreas también marcadas en colores distintos, también a todas las áreas las agrupe con AGRUPAR ESQUEMA (herramienta que desconocía hasta hace poco) solo para probar, pero no me daría resultados en la hoja que preparo ya que es mucho mas larga.
Hoy intente grabar una macro, fui a Grabar macro, seleccione ciertas columnas y las oculte, finalice la grabación, pero cuando quise ejecutarla (después de volver a mostrar el área que oculte), solo me oculto la columna sobre la cual estaba posicionado el cursor.
Lo que quisiera es una orientación con algún área de este ejemplo (ya que no entiendo nada de macros), y luego veré como lo hago yo mismo cuando termine la otra hoja. Supongo que si tengo una macro para MOSTRAR-OCULTAR un sector de una hoja, deberé copiar el código y reemplazar la parte del área de columnas para MOSTRAR-OCULTAR otro orea.
Otra cosa, para que la macro este siempre en la hoja debería grabarse en la misma hoja no?
Bueno, espero que se haya entendido y agradezco cualquier consejo.
Saludos!
- Adjuntos
-
- EJEMPLO OCULTAR-MOSTRAR.ods
- (7.23 KiB) Descargado 1819 veces
OpenOffice.org 3.3 , XP Profesional
Re: Como hacer macros para ocultar-mostrar columnas?
Hola...
Es muy sencillo ocultar columnas:
Te anexo tu archivo con las macros... solo resta asignar a los botones que quieras, ten cuidado de no poner los botones en el área de las columnas que ocultaras, yo crearía una nueva barra de herramientas para esto.
Si con las respuestas obtenidas consideras que se ha dado solución a tu consulta , por favor, marca el tema como [RESUELTO],
Si no sabes cómo, por favor, lee Como marcar como [RESUELTO] un tema.
Gracias por participar en el foro y ayudar a que todo esté ordenado.
Es muy sencillo ocultar columnas:
Código: Seleccionar todo
Option Explicit
Sub Pruebas()
'Solo pasa el rango que quieras ocultar o mostrar
Call MostrarOcultarColumnas("V1:Z1")
End Sub
Sub MostrarOcultarColumnas(Rango As String)
Dim oRango As Object
oRango = ThisComponent.getCurrentController.getActiveSheet.getCellRangeByName(Rango)
oRango.getColumns.IsVisible = NOT oRango.getColumns.IsVisible
End Sub
Si con las respuestas obtenidas consideras que se ha dado solución a tu consulta , por favor, marca el tema como [RESUELTO],
Si no sabes cómo, por favor, lee Como marcar como [RESUELTO] un tema.
Gracias por participar en el foro y ayudar a que todo esté ordenado.
- Adjuntos
-
- EJEMPLO OCULTAR-MOSTRAR.ods
- (8.44 KiB) Descargado 2982 veces
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Re: Como hacer macros para ocultar-mostrar columnas?
Hola Mauricio, gracias ante nada, baje el archivo pero no entiendo bien que debo hacer ahora, se supone que al ejecutar la Macro MostrarOcultarColumnas se debe Mostrar-Ocultar el área V1:Z1???? Perdona mi ignorancia al respecto, yo por las dudas puse a bajar la ultima versión de Ooo ya que la que hay en esta PC es antigua y creo que anda mal.
Otra cosa, para Mostrar-Ocultar un área debo hacer 2 macros? 1 Mostrar y otra Ocultar?
Después para asignarla aun botón leeré como hacer, yo no lo marque en el ejemplo pero hay un área fija que nunca se ocultaría y ahí quisiera poner los botones, igual no sabia que se podía hacer una barra para esto, pero a esto lo veré después, primero quiero saber bien como hay que hacer para grabar una macro Mostrar-Ocultar columnas.
Por ultimo, una vez me dijiste en una respuesta que el Grabador de Macros debe usarse para cosas realmente simples, que es mejor escribir el código para las macros, para esto de Mostrar-Ocultar que pensas, me conviene usar el grabador?
Otra cosa, para Mostrar-Ocultar un área debo hacer 2 macros? 1 Mostrar y otra Ocultar?
Después para asignarla aun botón leeré como hacer, yo no lo marque en el ejemplo pero hay un área fija que nunca se ocultaría y ahí quisiera poner los botones, igual no sabia que se podía hacer una barra para esto, pero a esto lo veré después, primero quiero saber bien como hay que hacer para grabar una macro Mostrar-Ocultar columnas.
Por ultimo, una vez me dijiste en una respuesta que el Grabador de Macros debe usarse para cosas realmente simples, que es mejor escribir el código para las macros, para esto de Mostrar-Ocultar que pensas, me conviene usar el grabador?
OpenOffice.org 3.3 , XP Profesional
Re: Como hacer macros para ocultar-mostrar columnas?
Te conviene usar la macro que te pase, ya hace todo el trabajo, la macro alterna el estado visible del rango pasado, si esta oculto lo muestra, si esta visible lo oculta... solo asegurate de pasarle un rango valido, no importan las filas, solo que sea un rango valido, con los siguientes rangos pasados como en el ejemplo que te muestro hacen lo mismo:duralai escribió: para esto de Mostrar-Ocultar que pensas, me conviene usar el grabador?
A1:Z1
A10:Z20
Saludos
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Re: Como hacer macros para ocultar-mostrar columnas?
Mauricio, cuando ejecuto la macro me sale un mensaje de error: Se ha producido un error de marco de programación al ejecutar el comando Standard.Module1.MostrarOcultarColumnas escrito en Basic.
Mensaje: wrong number of parameters.
Aclaro que solo baje el archivo y sin tocar nada ejecute la Macro, no se si debía cambiar algo o no....
Recién acabo de instalar la ultima versión de Ooo Apache, y ya había instalado la ultima de Java y puesto la opción de Seguridad de Macros en "BAJO" ya que no se me ejecutaba.
Mensaje: wrong number of parameters.
Aclaro que solo baje el archivo y sin tocar nada ejecute la Macro, no se si debía cambiar algo o no....
Recién acabo de instalar la ultima versión de Ooo Apache, y ya había instalado la ultima de Java y puesto la opción de Seguridad de Macros en "BAJO" ya que no se me ejecutaba.
OpenOffice.org 3.3 , XP Profesional
Re: Como hacer macros para ocultar-mostrar columnas?
Hola, perdón por error ejecute otra macro, no me di cuenta que debía ejecutar la macro "pruebas" , ahora lo hice y funciona bien, ahora me faltaría saber como asociarla a un botón y a una barra, después veré cual de las 2 opciones uso, así que si podes bienvenida una ayuda.
Igualmente estoy leyendo ahora por la web un poco mas sobre macros, una vez había empezado a leer un libro tuyo pero como recién empezaba no entendía nada.
Muchas gracias.
Igualmente estoy leyendo ahora por la web un poco mas sobre macros, una vez había empezado a leer un libro tuyo pero como recién empezaba no entendía nada.
Muchas gracias.
OpenOffice.org 3.3 , XP Profesional
Re: Como hacer macros para ocultar-mostrar columnas?
Hola
Si en lugar de ocultar-mostrar prefieres agrupar por columnas, esta macro lo permite:
Saludos
Si en lugar de ocultar-mostrar prefieres agrupar por columnas, esta macro lo permite:
Código: Seleccionar todo
Sub Main
Dim oDoc as Object
oDoc = ThisComponent
Columnas_Agrupar oDoc, 5, 7
End Sub
Sub Columnas_Agrupar( oDoc, nColIni, nColFin )
'--------------------------------------------------------------------------------------------
' Agrupa las columnas desde nColIni hasta nColFin
Dim oRango As New com.sun.star.table.CellRangeAddress
With oRango
.Sheet = oDoc.getCurrentController.getActiveSheet.getRangeAddress.Sheet
.StartColumn = nColIni
.EndColumn = nColFin
End With
oDoc.getCurrentController.getActiveSheet.Group( oRango, 0 )
End Sub
Saludos
+info en la web "no oficial" dedicada a OpenOffice en Español
AOO 4.1.2 y LibO 4.4.6 en W10 y en Lliurex
No respondo mensajes privados sobre AOO, por favor, utiliza el foro para tus preguntas
AOO 4.1.2 y LibO 4.4.6 en W10 y en Lliurex
No respondo mensajes privados sobre AOO, por favor, utiliza el foro para tus preguntas
Re: Como hacer macros para ocultar-mostrar columnas?
Hola Salva, bueno gracias!
OpenOffice.org 3.3 , XP Profesional
Re: Como hacer macros para ocultar-mostrar columnas?
Como tendria que hacer para crear una nueva Macro?
Yo me imagine que debia ir a Herramientas-Macros-Organizar macros-OpenOffice.org Basic
luego ir a la hoja y modulo donde quiero que se grabe, NUEVO y ahi copiar el codigo.
hago todo esto pero se me abre una macro ya creada anteriormente.
Yo me imagine que debia ir a Herramientas-Macros-Organizar macros-OpenOffice.org Basic
luego ir a la hoja y modulo donde quiero que se grabe, NUEVO y ahi copiar el codigo.
hago todo esto pero se me abre una macro ya creada anteriormente.
OpenOffice.org 3.3 , XP Profesional
Re: Como hacer macros para ocultar-mostrar columnas?
En mi libro viene explicado: http://forum.openoffice.org/es/forum/vi ... =50&t=1545
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
Re: Como hacer macros para ocultar-mostrar columnas?
Ok, gracias lo vere, por ultimo, con la macro que me diste, se puede hacer que se Muestren-Oculten a la vez áreas separadas de una hoja, por ejemplo F1:K1 , M1:T1 y AA1:AG1?
OpenOffice.org 3.3 , XP Profesional
Re: Como hacer macros para ocultar-mostrar columnas?
Y también lo tienes en mi web, en el área dedicada al Basic de OpenOffice.
Saludos
Saludos
+info en la web "no oficial" dedicada a OpenOffice en Español
AOO 4.1.2 y LibO 4.4.6 en W10 y en Lliurex
No respondo mensajes privados sobre AOO, por favor, utiliza el foro para tus preguntas
AOO 4.1.2 y LibO 4.4.6 en W10 y en Lliurex
No respondo mensajes privados sobre AOO, por favor, utiliza el foro para tus preguntas
Re: Como hacer macros para ocultar-mostrar columnas?
Bueno, tbn lo veré, gracias.
OpenOffice.org 3.3 , XP Profesional
Re: Como hacer macros para ocultar-mostrar columnas?
Código: Seleccionar todo
Call MostrarOcultarColumnas("F1:K1")
Call MostrarOcultarColumnas("M1:T1")
Call MostrarOcultarColumnas("AA1:AG1")
______________________________________________
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro
"Todo cuanto no podemos dar nos posee". - André Gide
LibreOffice 6.2 | ArchLinux | Gnome3
No respondo preguntas privadas, por favor, usa el foro