Jump to content

Listas desplegables con formatos múltiples (con control SpreadSheet)


R0CI0

Recommended Posts

Saludos a todos.

Estoy continuando el post ( https://www.ayudaexcel.com/foro/macros-programacion-vba/20306-pendiente-formatos-diferentes-cuadro-combinado-combobox.html ) donde pregunté por una lista desplegable o un combobox en el que se pudieran asignar distintos formatos a cada una de las líneas.

Macro Antonio me contestó que ésto no se podía hacer con los combobox, pero que consultara otro post que había empezado él sobre cómo utilizar la función SpreadSheet (que hay que descargarse aparte, consultar ese post: https://www.ayudaexcel.com/foro/ideas-aportes/20517-listas-validacion-multiples-columnas-fuentes-colores.html ).

Por cierto, muchisimas gracias por tu ayuda Macro Antonio.

Ésta función (SpreadSheet 11.0) crea una ventana a un libro entero paralelo, en el que podemos editar lo que queramos y proporcionarle aspecto de lista desplegable.

Ahora tengo varias dudas surgidas a partir del magnífico archivo que subió para explicar la función:

- Cómo se vincula una seleccion realizada en el SpreadSheet con una celda?

- Cómo se consigue que sólo aparezca en el caso de seleccionar una celda de la columna F?

- Se puede bloquear una línea para que no se pueda seleccionar? (hacer que los titulos y subtitulos no se puedan seleccionar, solo los de tercer nivel)

- Y otra también muy importante... se pueden vincular las celdas del SpreadSheet con celdas en otras hojas del archivo de origen?

Adjunto el archivo donde estaba trabajando y donde quería adaptar el control SpreadSheet, pero lo que más quiero es aprender cómo se hace y como hacer modificaciones. Supongo que irá todo por código.

Es un archivo de gastos personales que estoy realizando porque los que he encontrado en internet no estaban muy desglosados, y que cuando termine lo colgaré en aportes, por si a alguien le sirve o lo decide mejorar (acepto criticas e ideas de mejoras).

Donde quiero insertar las listas SpreadSheet es en la hoja G_ENERO, en la columna correpondiente con "Tipo de gasto", y quiero que aparezca la lista escrita en la hoja LISTA_GASTOS, para que si modifico algún dato en esa hoja también lo haga el contenido del SpreadSheet (procuro siempre separar mucho los datos para editarlos mejor en el futuro, pequeñas manías). Eso es lo que no se si se puede hacer o no, y que he preguntado un poco mas arriba.

La verdad es que nunca dejo de sorprenderme de la cantidad de cosas que permite hacer el excel, y eso que todavía no sé nada, y sobre todo de todo lo que estoy aprendiendo en este foro, es íncreible la ayuda que nos prestáis los expertos!!

Muchas gracias por todo!!

Un saludo, y Felices Fiestas!!

2011_CUENTAS_CASA.rar

Link to comment
Share on other sites

Hola:

Una vez analizado ligeramente lo que persigues he llegado a la conclusión de que no es el mejor sistema poner el spread en la hoja.

Dado que todo el montaje va a través de código VBA y que vas a tener una hoja por cada mes,l creo que la mejor opción es pasar el spread a un formulario VBA.

Intuyo por tus comentarios que no dominas en exceso el tema de programación en Visual Basic, por lo que he realizado un pequeño formulario que creo va a permitirte solucionar tu problema.

En el adjunto, cada vez que el nombre de la hoja empiece por "G_" y selecciones una celda de la columna "B" y una fila mas allá de la 14, siempre que la fila anterior no esté en blanco, se te abrirá un formulario con los conceptos de gasto de la hoja "LISTA_GASTOS" estructurada por nivel de concepto, solo si escoges alguna celda del tercer nivel, dicho concepto pasará a la celda activa.

Saludos, besos y buenas fiestas.

PD: No dudes en consultar lo que no entiendas.

2011_CUENTAS_CASA.zip

Link to comment
Share on other sites

..........

Me he quedado sin palabras al ver el archivo....

Pocos "Me gusta" permite poner el foro. Cuando he leido que se iba a abrir un formulario, estaba un poco recelosa, por si dejaba de ser práctico y sobre todo rápido. Pero lejos de eso, esto es brillante! Sólo se abre la celda que a continuación queda vacía, y se pueden seguir modificando las que ya están editadas! Además en la hoja de la lista se pueden añadir o eliminar filas de la lista, asignandoles un nivel... No se puede pedir más. Práctico, rápido y eficaz.

Como siempre increíble.

Ahora me queda a mí intentar aprender cómo se hace, cosa que veo que me va a costar un quintal... porque la verdad es que no tengo ni idea de VBA, lo poco que puedo modificar y aplicar en sitios nuevos soluciones que me dáis en este foro.

De todas formas, para empezar a comprender todo este sistema, podrías explicarme un poquillo cómo esta organizado?

Muchas gracias por todo!

Un saludo!

Link to comment
Share on other sites

Me acaba de pasar algo peculiar... Cuando seleccionas una celda de la hoja que empieza por "G_" no ocurre nada salvo que elijas una de la columna B a partir de la fila 15 que esté con texto o la siguiente vacía, que entonces aparece el formulario. Sin embargo, cuando seleccionas un rango de celdas de cualquier parte de la hoja, también aparece el formulario, pudiendo hacer una seleccion y dejando el resultado en la primera celda del rango elegido... por qué puede estar pasando esto?

Un saludo.

Link to comment
Share on other sites

Hola:

Se trata de un error de programación de la macro.

Sustituyela en ThisWorkbook (Alt+F11 y doble click en ThisWorkbook) por:


Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
On Error Resume Next

'Descargamos el formulario si está cargado
If Conceptos.Visible = True Then Unload Conceptos


'Nos vamos si hemos seleccionado mas de una celda
If Target.Cells.Count > 1 Then Exit Sub


'Si la hoja empieza por "G_"
If Left(Sh.Name, 2) = "G_" Then

'Si la columna es la B, la celda mas allá de la 14
'y la misma celda de la fila anterior no está vacía
If Target.Column = 2 And _
Target.Row > 14 And _
Target.Offset(-1, 0).Value <> "" Then

'Cargamos el formulario si no está cargado
If Conceptos.Visible = False Then
Conceptos.Show
End If

End If


End If


End Sub
[/CODE]

He recibido tu mensaje, estoy en ello.

Saludos

Link to comment
Share on other sites

  • 10 months later...

Dudas...quien puede ayudarme

Hola quien puede ayudarme....miren mi problema es este...tengo en mi hoja 1:CONTROL DE SOLICITUDES, ciertos datos que a continuacion pongo...claro con su formato

[TABLE]

[TR]

[TD=class: xl136, width: 44]No

[/TD]

[TD=class: xl136, width: 8][/TD]

[TD=class: xl136, width: 93]Región [/TD]

[TD=class: xl136, width: 8][/TD]

[TD=class: xl136, width: 274]Nombre del socio

[/TD]

[TD=class: xl136, width: 8][/TD]

[TD=class: xl136, width: 243]Nombre del aval

[/TD]

[TD=class: xl136, width: 8][/TD]

[TD=class: xl136, width: 193]Nombre del Grupo

[/TD]

[TD=class: xl136, width: 8][/TD]

[TD=class: xl136, width: 121]Supervisor[/TD]

[TD=class: xl136, width: 8]

[/TD]

[TD=class: xl136, width: 160]Promotor[/TD]

[TD=class: xl87, width: 8]

[/TD]

[TD=class: xl88, width: 67]IFE

[/TD]

[TD=class: xl89, width: 8]

[/TD]

[TD=class: xl90, width: 67]Compr. de Dom[/TD]

[TD=class: xl89, width: 8]

[/TD]

[TD=class: xl91, width: 67]IFE Aval

[/TD]

[TD=class: xl87, width: 8][/TD]

[TD=class: xl92, width: 67]Compr. Dom. Aval

[/TD]

[TD=class: xl87, width: 8]

[/TD]

[TD=class: xl93, width: 67]Pagaré[/TD]

[TD=class: xl87, width: 8]

[/TD]

[TD=class: xl92, width: 56]Rep. DE LA 5C

[/TD]

[TD=class: xl87, width: 8][/TD]

[TD=class: xl87, width: 118]TIPO DE PRODUCTO[/TD]

[TD=class: xl87, width: 8]

[/TD]

[TD=class: xl87, width: 121]Plazo[/TD]

[TD=class: xl87, width: 8][/TD]

[TD=class: xl163, width: 96]Monto

[/TD]

[TD=class: xl87, width: 8][/TD]

[TD=class: xl158, width: 83]Recibida

[/TD]

[TD=class: xl158, width: 68]Atendida

[/TD]

[TD=class: xl86, width: 68] Aceptada

[/TD]

[TD=class: xl86, width: 128]Reconsiderada

[/TD]

[TD=class: xl86, width: 83]Rechazada

[/TD]

[TD=class: xl94, width: 891]Observaciones

[/TD]

[TD=width: 180][/TD]

[/TR]

[TR]

[TD=class: xl137] [/TD]

[TD=class: xl137] [/TD]

[TD=class: xl137] [/TD]

[TD=class: xl137]

[/TD]

[TD=class: xl150]07 de Noviembre 2012

[/TD]

[TD=class: xl137] [/TD]

[TD=class: xl137] [/TD]

[TD=class: xl137] [/TD]

[TD=class: xl137] [/TD]

[TD=class: xl137] [/TD]

[TD=class: xl137] [/TD]

[TD=class: xl137] [/TD]

[TD=class: xl137] [/TD]

[TD=class: xl97] [/TD]

[TD=class: xl98] [/TD]

[TD=class: xl95] [/TD]

[TD=class: xl98] [/TD]

[TD=class: xl95] [/TD]

[TD=class: xl98] [/TD]

[TD=class: xl95] [/TD]

[TD=class: xl98] [/TD]

[TD=class: xl98] [/TD]

[TD=class: xl98] [/TD]

[TD=class: xl98]

[/TD]

[TD=class: xl98]

[/TD]

[TD=class: xl95] [/TD]

[TD=class: xl95] [/TD]

[TD=class: xl95] [/TD]

[TD=class: xl95]

[/TD]

[TD=class: xl95]

[/TD]

[TD=class: xl133]

[/TD]

[TD=class: xl95] [/TD]

[TD=class: xl100] [/TD]

[TD=class: xl100] [/TD]

[TD=class: xl97]

[/TD]

[TD=class: xl97] [/TD]

[TD=class: xl97] [/TD]

[TD=class: xl97] [/TD]

[TD][/TD]

[/TR]

[TR]

[TD=class: xl137, align: right]208

[/TD]

[TD=class: xl137] [/TD]

[TD=class: xl137]Mexico

[/TD]

[TD=class: xl137] [/TD]

[TD=class: xl137]Panchito

[/TD]

[TD=class: xl137] [/TD]

[TD=class: xl137]Fulanita

[/TD]

[TD=class: xl137] [/TD]

[TD=class: xl137]Los palcos

[/TD]

[TD=class: xl137] [/TD]

[TD=class: xl137]Malota

[/TD]

[TD=class: xl137]

[/TD]

[TD=class: xl137]Manoel

[/TD]

[TD=class: xl97] [/TD]

[TD=class: xl98]X

[/TD]

[TD=class: xl98] [/TD]

[TD=class: xl98]X[/TD]

[TD=class: xl98] [/TD]

[TD=class: xl98]X[/TD]

[TD=class: xl98] [/TD]

[TD=class: xl98]X[/TD]

[TD=class: xl98] [/TD]

[TD=class: xl98] [/TD]

[TD=class: xl98] [/TD]

[TD=class: xl98]X[/TD]

[TD=class: xl95] [/TD]

[TD=class: xl95]Normal[/TD]

[TD=class: xl95] [/TD]

[TD=class: xl95]24 semanas

[/TD]

[TD=class: xl95][/TD]

[TD=class: xl133] $ 00.00

[/TD]

[TD=class: xl95] [/TD]

[TD=class: xl100]X[/TD]

[TD=class: xl100]X[/TD]

[TD=class: xl100]X[/TD]

[TD=class: xl100] [/TD]

[TD=class: xl100]

[/TD]

[TD][/TD]

[/TR]

[/TABLE]

quiero que datos de esta hoja se pegen en automatico en la hoja2:CASOS PRESENTADOS A COMITE, dependiendo la fecha en la que fue recibido la solicitud, este es mi formato para que vean que datos necesito que se peguen en automatico...

[TABLE=width: 2164]

[TR]

[TD=colspan: 3]FECHA: 07 DE Noviembre 2012[/TD]

[TD][/TD]

[TD]ACTA N13

[/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[/TR]

[TR]

[TD=colspan: 19] RELACION DE CASOS PRESENTADOS AL COMITÉ DE CRÉDITO

[/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[/TR]

[TR]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[/TR]

[TR]

[TD]No[/TD]

[TD][/TD]

[TD]Nombre del solicitante

[/TD]

[TD][/TD]

[TD]Grupo de Origen

[/TD]

[TD][/TD]

[TD]Plazo Solicitado[/TD]

[TD] [/TD]

[TD]Plazo autorizado[/TD]

[TD][/TD]

[TD=colspan: 3]Importe[/TD]

[TD] [/TD]

[TD]Nombre de Funcionario que propone[/TD]

[TD][/TD]

[TD]Rechazado[/TD]

[TD][/TD]

[TD]Causa de Rechazo[/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[/TR]

[TR]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD] [/TD]

[TD][/TD]

[TD]Solicitado[/TD]

[TD] [/TD]

[TD]Autorizado[/TD]

[TD] [/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[TD][/TD]

[/TR]

[/TABLE]

Esto como lo mencione dependiendo de la fecha, es decir en el ejemplo de arriba es del 7 de noviembre... pero se genero mas solicitudes el 8 el 9 y asi sucesivamente... y quiero que cada que se ponga la fecha (08 de Noviembre 2012) se genere automatico en seguida de la anterior (en CASOS PRESENTADOS A COMITE), no se si me explico....la verdad me urge y ps ni idea tengo de esto...GRACIAS....

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

Privacy Policy