Ocultar columnas mediante cuadro combinado

10/05/2007 - 11:00 por bettyblue30 | Informe spam
Hola a todos. Soy bastante novata en lo que se refiere al lenguaje
VBA, y me gustaría saber si alguien me puede ayudar a crear una macro
que oculte columnas. En particular tengo una hoja en la que en cada
columna se encuentran datos referentes a un determinado mes del año.
Lo que necesito es una macro que en función del mes que escriba en una
celda de la hoja, me oculte todas las columnas que no se correspondan
con el mes seleccionado.

Me han comentado que también en vez de tener que escribir el mes que
quiero que quede visible, se podría hacer con un cuadro combinado,
pero ahí estoy aún más perdida.

Alguien me puede ayudar?

Muchas gracias

Preguntas similare

Leer las respuestas

#6 Héctor Miguel
14/05/2007 - 00:49 | Informe spam
hola, Betty !

... primero decirte que las dos macros funcionan perfectamente
solo que para el caso de la segunda no era eso del todo lo que estaba buscando.
Te cuento, no es que la macro sea para mostrar los meses o los trimestres unicamente.
Lo que te decia era que si es posible de alguna forma que con una macro y mediante botones de comandos
pueda hacer que me ense#e (es decir, no me oculte) las columnas que yo kiera. Por ejemplo
si en algun momento necesito comparar los datos correspondientes a los meses de enero, junio y diciembre
me muestre esas columnas y me oculte el resto. Lo mismo si solo kiero ver uno de los meses
o ver todos los meses menos agosto en fin, las infinitas posibilidades con los 12 meses...
Estoy pidiendo un imposible??????



no creo que estes pidiendo 'un imposible' :))
-> solo ['parece'] que tus necesidades van cambiando en la medida en que solucionas inquietudes anteriores :))
lo cual es tambien una situacion 'normal' en la curva del aprendizaje [p.e.]
-> revisa el desarrollo de esta consulta:

1) en el asunto 'explicitamente' solicitas:
"ocultar columnas mediante un cuadro combinado"
-> RESUELTO :))

2) en tu primera consulta solicitaste 'expresamente':
"que en funcion del mes que escriba en una celda de la hoja... "
"oculte todas las columnas que no se correspondan con el mes seleccionado"
-> RESUELTO :))

3) en tu segunda consulta 'amplias' a:
"que tendria que hacer si por ejemplo quisiera que me mostrara las columnas"
"correspoondientes al segundo trimestre (abril, mayo y junio) o todos los meses?"
-> RESUELTO :))

4) ahora [al parecer] necesitas seleccionar/mostrar/... meses de forma 'aleatoria'...
[p.e. 4, 6, 7 y 11] y que se oculten los demas ???
o... mostrarlos todos y ocultar otro/s tambien de manera 'discrecional' ???

5) a reserva de lo que pudiera llegar a significar 'eso' de: "en fin, las infinitas posibilidades con los 12 meses"
me parece que es hora de que expongas/comentes/... [+/- exactamente] TODO el alcance de lo que necesitas -?-

comentas cualquier detalle que estuvieras dejando 'en el tintero' ?
saludos,
hector.
Respuesta Responder a este mensaje
#7 bettyblue30
14/05/2007 - 10:25 | Informe spam
On 14 mayo, 00:49, "Héctor Miguel"
wrote:
hola, Betty !

> ... primero decirte que las dos macros funcionan perfectamente
> solo que para el caso de la segunda no era eso del todo lo que estaba buscando.
> Te cuento, no es que la macro sea para mostrar los meses o los trimestres unicamente.
> Lo que te decia era que si es posible de alguna forma que con una macro y mediante botones de comandos
> pueda hacer que me ense#e (es decir, no me oculte) las columnas que yo kiera. Por ejemplo
> si en algun momento necesito comparar los datos correspondientes a los meses de enero, junio y diciembre
> me muestre esas columnas y me oculte el resto. Lo mismo si solo kiero ver uno de los meses
> o ver todos los meses menos agosto en fin, las infinitas posibilidades con los 12 meses...
> Estoy pidiendo un imposible??????

no creo que estes pidiendo 'un imposible' :))
-> solo ['parece'] que tus necesidades van cambiando en la medida en que solucionas inquietudes anteriores :))
lo cual es tambien una situacion 'normal' en la curva del aprendizaje [p.e.]
-> revisa el desarrollo de esta consulta:

1) en el asunto 'explicitamente' solicitas:
"ocultar columnas mediante un cuadro combinado"
-> RESUELTO :))

2) en tu primera consulta solicitaste 'expresamente':
"que en funcion del mes que escriba en una celda de la hoja... "
"oculte todas las columnas que no se correspondan con el mes seleccionado"
-> RESUELTO :))

3) en tu segunda consulta 'amplias' a:
"que tendria que hacer si por ejemplo quisiera que me mostrara las columnas"
"correspoondientes al segundo trimestre (abril, mayo y junio) o todos los meses?"
-> RESUELTO :))

4) ahora [al parecer] necesitas seleccionar/mostrar/... meses de forma 'aleatoria'...
[p.e. 4, 6, 7 y 11] y que se oculten los demas ???
o... mostrarlos todos y ocultar otro/s tambien de manera 'discrecional' ???

5) a reserva de lo que pudiera llegar a significar 'eso' de: "en fin, las infinitas posibilidades con los 12 meses"
me parece que es hora de que expongas/comentes/... [+/- exactamente] TODO el alcance de lo que necesitas -?-

comentas cualquier detalle que estuvieras dejando 'en el tintero' ?
saludos,
hector.



Hola Hector

Tienes toda la razón, mis inquietudes en cuanto a las posibilidades
que las macros te pueden dar van creciendfo a medida que voy
investigando en este foro, aunque mis conocimientos no crecen con la
misma velocidad

Disculpame si estoy siendo demasiado pesada, no es mi intención.

Respondiendo a tu pregunta, lo de infionitas posibilidades me refiero
de forma figurada a la gran cantidad de posibilidades de mostrar
meses, es decir, q me muestre los que yo quiera, es en realidad como
una mezcla de las dos macros previas (que pueda ver todos los meses,
que pueda ver meses no consecutivos, que pueda ver meses que
pertenezcan a trimestres, ) es decir, tener una lista donde
marque (con ticks???) de alguna forma los meses que quiero ver.
Agradecida por tu continua ayuda.
Respuesta Responder a este mensaje
#8 Héctor Miguel
15/05/2007 - 02:15 | Informe spam
hola, Betty !

... lo de infionitas posibilidades me refiero de forma figurada a la gran cantidad de posibilidades de mostrar meses
es decir, q me muestre los que yo quiera, es en realidad como una mezcla de las dos macros previas
(que pueda ver todos los meses, que pueda ver meses no consecutivos, que pueda ver meses que pertenezcan a trimestres, )
es decir, tener una lista donde marque (con ticks???) de alguna forma los meses que quiero ver...



el unico 'detalle' es que cuando ocultas objetos bajo criterios aleatorios/discrecionales/...
para poderlos mostrar nuevamente...
o vas guardando algun identificador para descartar los que no deban ser 'afectados'
o muestras todos y luego vuelves a ocultar [usando otro identificador] los requeridos, [etc]

como de todas formas el 'proceso de seleccion' estas obligada a efectuarlo [de alguna manera]...
usa algo +/- como lo siguiente:

1) inserta un control commandbutton [de la barra de herramientas cuadro de controles] p.e. en la celda 'A1' de tu hoja
2) copia/pega las siguientes lineas en el modulo de codigo de 'esa' hoja [click derecho en su etiqueta y -> ver codigo]

Private Sub CommandButton1_MouseDown( _
ByVal Button As Integer, ByVal Shift As Integer, _
ByVal X As Single, ByVal Y As Single)
Selection.EntireColumn.Hidden = Shift <> 1
End Sub

3) regresa a excel y cuando quieras:
a) ocultar la/s columna/s que previamente selecciones [simplemente] pulsas en el boton
b) mostrar columnas ocultas: seleccionas columnas visibles ANTES Y DESPUES de las ocultas y pulsas {mayus}+click_boton

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida