Unificar 2 códigos de ComboBox en Userform_Initialize

Tengo 2 Combos que el código es exactamente igual solo que uno es ComboBox1 y otro es ComboBox2


Podría igemplificar como unificar los dos códigos de dos ComboBox que tengo para llenarse AL INICIALIZARSE el UserForm1

<pre class="prettyprint" style="width: 637px; height: 235px;">PrivateSubUserForm_Activate()
DimstrRango AsString
Application.ScreenUpdating=False
Sheets("hoja1").Activate
'limpiar el combo1
ComboBox1.Clear
strRango = "Aa3:Aa" & Format(Range("Aa65500").End(xlUp).Row)
ComboBox1.RowSource = strRango
''''''''''''''''''''''''''
'limpiar el combo2
ComboBox2.Clear
strRango ="Ab3:Ab"&Format(Range("Ab65500").End(xlUp).Row)
ComboBox2.RowSource=strRango
Sheets("hoja2").Activate'si quieres visualizar la hoja2 al abrir el formulario, elimina esta linea
Application.ScreenUpdating = True
End Sub</pre>

1 Respuesta

Respuesta
1

Prueba con esto. Es el evento INITIALIZE que se ejecuta en el instante de abrir el formulario:

Private Sub UserForm_Initialize()
Application.ScreenUpdating = False
strrango = "Aa3:Aa" & Sheets("hoja1").Range("Aa65500").End(xlUp).Row
combobox1.RowSource = strrango
combobox2.RowSource = strrango
End Sub

no olvides finalizar la consulta

El problema es que los 2 comboBox se están alimenta de la misma columna AA y no puede ser, el ComboBox1 debe ser de la AA y el ComboBox2 de la columna AB por lo tanto así los

Aclaro:

El Dim strRango As String tiene que tenerlo, yo lo se y tu lo sabes, solo es una aclaratoria por si algún usuario entra al tema

Correcto, no me dí cuenta. Mi macro quedaría así:

Private Sub UserForm_Initialize()
Application.ScreenUpdating = False
strrango1 = "Aa3:Aa" & Sheets("hoja1").Range("Aa65500").End(xlUp).Row
strrango2 = "Ab3:Ab" & Sheets("hoja1").Range("Ab65500").End(xlUp).Row
combobox1.RowSource = strrango1
combobox2.RowSource = strrango2
End Sub

no olvides finalizar la consulta

Repito porque salio incompleta la aclaratoria y no entiendo el porque:

El problema es que los 2 comboBox se están alimentando de la misma columna AA y no puede ser, el ComboBox1 debe ser de la AA y el ComboBox2 de la columna AB por lo tanto así no me sirve.

Te agradezco si puedes completar tu ayuda.

Gracias

Observa mi última macro, en ella estoy individualizando los rangos.

Strrango1

Strrango2

Examínala

Perfecto, Muy agradecido me quitaste un 10.

Quiero finalizar el tema pero tengo un pedido hacerte. Probé sin declarar el Dim strRango As String y funciona, sin Option Explicit al inicio pero si lo coloco arriba de todo (como tu sabes donde ya me pide declaratoria, no es lo mismo si esta o no esta la linea Option Explicit ¿porque?

Como ya sabes si pones option explicit estás obligado a declarar las variables, pero para algo así no lo veo necesario.

Recuerda finalizar la consulta

Añade tu respuesta

Haz clic para o