Visual Basic para Aplicaciones - Introducir datos con userform basandose en 2 factores

Life is soft - evento anual de software empresarial
 
Vista:
Imágen de perfil de Oscar
Val: 15
Ha disminuido 1 puesto en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Introducir datos con userform basandose en 2 factores

Publicado por Oscar (5 intervenciones) el 24/02/2019 01:52:15
Ejemplo-para-foro-Excel

Buenas noches, Soy de venezuela y estoy tratando de aprender un poco más de Excel, para paliar un poco la crítica situación económica que tenemos en el pais.

En este caso necesito simplificar un poco el trabajo con una hoja de excel que uso con mucha frecuencia. La situación se solucionaría bastante si logro programar un Userform que al ejecutarse busque el nombre en la lista y se dirija al mes solicitado llenando las celdas correspondientes a Z1 hasta Z6, tal como se muestra en la Imagen de muestra.
Ya lo he intentado, pero para ser honrado debo admitir que no se mucho de programación Bva. Agradecería la amabilidad de quien pudiera prestarme esa ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Samuel
Val: 84
Ha aumentado 1 puesto en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Introducir datos con userform basandose en 2 factores

Publicado por Samuel (27 intervenciones) el 24/02/2019 19:46:01
Hola buenos días.

Te recomiendo que uses Access ya que tiene mucha mas potencia y las aplicaciones o programas te quedan más profesionales ya que Excel es solo un programa que usa hojas de cálculo, no es un gestor de base de datos o programa para desarrollar aplicaciones.

Sin embargo te puedo dar un par de ideas, por ejemplo: Le hice algunos cambios a tu archivo para darte una idea de como podría funcionar.

Espero que te sirva de guía para que lo puedas hacer tu mismo.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Oscar
Val: 15
Ha disminuido 1 puesto en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Introducir datos con userform basandose en 2 factores

Publicado por Oscar (5 intervenciones) el 25/02/2019 05:06:34
Gracias Samuel, por tu tiempo... Ya me acerco bastante a lo que requiero, porque me trabaja para introducir los datos en el mes de Enero, no me funciona para los demá meses, y ya es algo. Muy agradecido.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Samuel
Val: 84
Ha aumentado 1 puesto en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Introducir datos con userform basandose en 2 factores

Publicado por Samuel (27 intervenciones) el 25/02/2019 05:09:38
Hola

Lo único que tienes que hacer es estudiar como hice que funcionara para enero y luego tienes que copiar el código y pegarlo pero con los demás meses y listo.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Antoni Masana
Val: 1.134
Oro
Ha mantenido su posición en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Introducir datos con userform basandose en 2 factores

Publicado por Antoni Masana (498 intervenciones) el 25/02/2019 10:11:53
Al código que te envío Samuel solo debes añadir esto. Y ya funciona perfectamente.
He probado enero y lo coloca bien, es más añadiendo esto te muestra lo que ya tiene y puedes corregirlo.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Private Sub cboMiembro_Change()
    Dim Mes As String, Busco_Mes As Range, Rango_Mes As String, _
        Nom As String, Busco_Nom As Range, Rango_Nom As String
 
    Mes = UCase(cboMes.Text)
    Nom = cboMiembro.Text
 
    Rango_Mes = "A2:CU2"
    Rango_Nom = "C6:C" & ActiveSheet.Range("B" & Rows.Count).End(xlUp).Row
 
    Set Busco_Mes = ActiveSheet.Range(Rango_Mes).Find(What:=Mes, LookAt:=xlPart)
    Set Busco_Nom = ActiveSheet.Range(Rango_Nom).Find(What:=Nom, LookAt:=xlPart)
 
    D_1.Text = Cells(Busco_Nom.Row, Busco_Mes.Column + 1)
    D_2.Text = Cells(Busco_Nom.Row, Busco_Mes.Column + 2)
    D_3.Text = Cells(Busco_Nom.Row, Busco_Mes.Column + 3)
    D_4.Text = Cells(Busco_Nom.Row, Busco_Mes.Column + 4)
    D_5.Text = Cells(Busco_Nom.Row, Busco_Mes.Column + 5)
    D_6.Text = Cells(Busco_Nom.Row, Busco_Mes.Column + 6)
End Sub


Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Oscar
Val: 15
Ha disminuido 1 puesto en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Introducir datos con userform basandose en 2 factores

Publicado por Oscar (5 intervenciones) el 25/02/2019 15:23:27
Gracias amigo Antony. Muy amable. estuve intentando insertar el trozo de codigo, pero me da error. Es que no soy muy experto en esto, Por favor te agradeceria que me indiques como hacerlo como lo harías con un niño, tenme paciencia... ... Y Mil gracias Antoni...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de Antoni Masana
Val: 1.134
Oro
Ha mantenido su posición en Visual Basic para Aplicaciones (en relación al último mes)
Gráfica de Visual Basic para Aplicaciones

Introducir datos con userform basandose en 2 factores

Publicado por Antoni Masana (498 intervenciones) el 25/02/2019 20:53:27
Te adjunto el libro con el código ya introducido.
Este código no es una macro, es parte del código del formulario.
El compañero Samuel te envió el libro con algunos cambios en el formulario (UserForm) y yo los he ampliado.
Ahora el formulario funciona perfectamente.

¿Cómo acceder a los códigos de las Macros?

Hay varios caminos pero te cuento solo dos de ellos:
- Pulsando las teclas Alt + F11
- Pestaña Vista - Icono Macros - Botón Modificar

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar