Cargar combobox en un formulario con los datos de una columna de otro hoja del mismo libro.

Tengo un UF de búsqueda de datos con un cmbvalidarbusqueda, que me encuentra datos de la hoja2 del mismo libro. Utilizo un textbox para introducir el dato principal a buscar y una vez localizado me coloca el resto de la información en distintos textbox. Quisiera hacerlo mas profesional sustituyendo el textbox principal por un combobox, de forma que me cargue los datos que existen en la columna primera de la hoja2, para de esa forma seleccionar el dato a buscar. Por otro lado he colocado un botón borrar registro, para que cuando encuentro un registro y ya no lo necesito me lo borre de la base de datos y a la vez me elimine la fila que ha quedado vacía. Espero que me podáis ayudar con el combobox porque soy incapaz de encontrar la manera de que me cargue los datos. Y por otro lado os dejo el código del botón borrar con el error que me da por si me supierais decir cual es el fallo.

Gracias mil.

Saludos.

Private Sub CmbELIMINAREGISTRO_Click()
If MsgBox("¿SEGURO QUE QUIERE ELIMINAR ESTE REGISTROS?", vbExclamation + vbYesNo) = vbYes Then
Application.ScreenUpdating = False
ActiveCell.EntireRow.DeleteSHIFT = xlUp (ESTA FILA ME DA ERROR)
comboboxmatricula = ""
TextBox2 = ""
TextBox3 = ""
TextBox4 = ""
TextBox5 = ""
TextBox6 = ""
TextBox7 = ""
TextBox8 = ""
TextBox9 = ""
TextBox10 = ""
TextBox11 = ""
TextBox12 = ""
TextBox13 = ""
TextBox14 = ""
TextBox15 = ""
If MsgBox("EL REGISTRO HA SIDO ELIMINADO.¿Quiere cerrar el formulario?", vbInformation + vbYesNo) = vbYes Then
UFDATOS.Hide
End If
End If
End Sub

1 respuesta

Respuesta
1

Como estás en el link hay un ejemplo de lo que tu quieres hacer fijate

http://www.programarexcel.blogspot.com/2013/05/macro-vba-busca-datos-coincidentes-con.html

El código lo debes poner cuando al cargar el formulario

Private Sub UserForm_Initialize()

Application.ScreenUpdating = False

Sheets("hoja1").Cells(2, 1).Select

While ActiveCell <> Empty

ComboBox1.AddItem ActiveCell

ActiveCell.Offset(1, 0).Select

Wend

Application.ScreenUpdating = False

End sub

Baja el ejemplo que te paso y veras como funciona luego lo adaptas a lo que necesitas, igualmetne en www.programarexcel.blogspot.com encontraras una serie de ejemplos que puedes descargar y adaptar a lo que tu estas haciendo, lo cual le dará una apariencia más profesional que es lo que tu pretendes, fijate el código y me comentas si necesitas ayuda para adaptarlo.

Si es lo que buscabas finaliza la pregunta, pero antes de puntuar repregunta todo lo que necesites sobre el tema par que quedes satisfecho con la respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas