jueves, 14 de noviembre de 2024

89 - Un Calendar (u otra herramienta o control) para alimentar varios controles dentro de un Userform.

 Siguiendo con el tema del video Nº 87 (pasar datos de una lista), en esta entrada dejo la guía de ese modelo, más otros casos de cómo compartir controles como un Calendario (u otras herramientas y/o controles).

Caso 1: Pasar datos de una lista a campos del mismo Userform. Se envía el contenido de cada columna a los controles correspondientes:

TextBox8 = ListBox1.List(ListBox1.ListIndex, 0)
ComboBox3 = ListBox1.List(ListBox1.ListIndex, 1)

 

Caso 2: Pasar datos de una lista ubicada en otro formulario. Anteponer, en cada control, el nombre del formulario que recibe los datos de la lista.

UF_UsoMaterial.TextBox8 = ListBox1.List(ListBox1.ListIndex, 0)
UF_UsoMaterial.ComboBox3 = ListBox1.List(ListBox1.ListIndex, 1)

NOTA: Otra manera de escribir el código sería con la estructura With... End With
With UF_UsoMaterial
.TextBox8 = ListBox1.List(ListBox1.ListIndex, 0)
.ComboBox3 = ListBox1.List(ListBox1.ListIndex, 1)
End With


Caso 3: Pasar datos de un Calendar (u otro control como ComboBox, TextBox para ingreso de clave, una Calculadora u otras herramientas) a varios campos dentro del Userform.
La programación será para este caso:

En un módulo, declarar una variable pública para guardar la fecha seleccionada.
Public FechaCalendario As String

Cada botón de llamada tendrá las instrucciones para llamar al control Calendar y guardar el contenido de la variable en el textbox o campo que corresponda. (Ajustar los nombres de los controles)

Private Sub CommandButton8_Click()
Calendario.Show
TextBox10 = FechaCalendario
End Sub

En el Userform que contendrá el Calendario, buscar el evento Clic y desde allí guardar la fecha seleccionada en la variable ya declarada.

Private Sub CAL_Click()
FechaCalendario = Fechas(DD)
Unload Me
End Sub




        Ver video Nº 89 desde aquí.

        Ver video Nº 87 desde aquí.

         Solicitar el documento con la guía al correo: cibersoft.arg@gmail.com