Macro para borrar la selección de un ComboBox

He creado un formulario con varios ComboBox, que a la hora de almacenar los datos requiero todos los campos del formulario queden en blanco para poder realizar un nuevo registro, pero dejar en blanco los ComboBox ha sido un dolor de cabeza. Alguien me puede ayudar con el código

Respuesta
1

Este es el código para limpiar los valores introducidos en todos los combobox de tu formulario

Dim objeto As Object

For Each objeto In Me.Controls

If TypeName(objeto) = "Combobox" Then
        objeto.Value = ""
End If

Next objeto

No olvides valorar la respuesta.

Perdón...

Corrge... Combobox por ComboBox o coloca Option Compare Text como primera línea del modulo

2 respuestas más de otros expertos

Respuesta
1

[Hola

Te paso la macro


Valora la respuesta para finalizar saludos!

Sub limpiar()
'
'Por Adriel Ortiz
    Set h1 = Sheets("REGISTRO & ACTUALIZACIÓN")
    '
    h1.ComboBox1 = ""
    h1.ComboBox2 = ""
    h1.ComboBox3 = ""
    '
    '
    'Aquí para el resto
End Sub

¡Gracias! 

Esta es la parte de la macro donde indico borrar los campos que se digitan, después de esto tal cual y alineado pego lo que me envías?

Sheets("REGISTRO & ACTUALIZACIÓN").Select
Range("D2").Select
Selection.ClearContents
Range("D3").Select
Selection.ClearContents
Range("D8").Select
Selection.ClearContents
Range("D9").Select
Selection.ClearContents

Respuesta
1

Prueba con combobox1. Clear si los datos son subidos usando additem

o combobox1.rowsource="=" & range() si los datos son subidos por rangos

Si son varios combobox usa esta macro, como dije solo tienes que ver como se cargan los datos en los combobox y usar una de las dos instrucciones .clear o .rowsource=empty

For Each Control In UserForm1.Controls
nombre = UCase(TypeName(Control))
If nombre = "COMBOBOX" Then
Control.Clear ' O CONTROL.ROWSOURCE=EMPTY
End If

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas