Macros de excel

Hola que tal
Estoy aprendiendo a usar macros en excel, y el editor de visual. Quiero diseñar un programa que me sirva para mi trabajo, pero tengo problemas con el combobox, no se como usarlo, solo lo que aprendí en un curso rapido, el problema que se me presenta es a la hora de poner la lista en el combo box me pasa esto: no me despliega la lista, tengo que escribir algo y después puedo ver la lista, el segundo problema es que conforme abanso en la base de datos, la lista del combobox se repite una y otra vez, ¿y cómo le puedo hacer paracorregir esos problemas?

1 respuesta

Respuesta
1
Seria bueno que pusieras tu código o parte de el, para checar como "llenas" el combobox
Antes que nada muchas gracias por responder
el combobox1 se llama organismo y en excel lo tengo ubicado en la celda b8y la lista que quiero me despliegue son: 4,7,8,9,10 en el editor y que se copie en la celda b8, pero a la vez no quiero que la lizta se repita por cada dato que ingreso.
Si me puedes ayudar con este problema te estaré muy agradecido.
Private Sub ComboBox1_Change()
ComboBox1.AddItem "4"
ComboBox1.AddItem "7"
ComboBox1.AddItem "8"
ComboBox1.AddItem "9"
ComboBox1.AddItem "10"
Range("B8").Select
ActiveCell.FormulaR1C1 = ComboBox1
End Sub
Ya vi el error, es que está en el evento Change, osea que cada vez que cambie o se modifique el Combobox, se ejecutará la rutina. Si debe funcionar tu código así como lo pones, pero debes ponerlo ya sea en el evento Enter o GotFocus del Combobox o en el evento Initialize del Userform que contiene este Combobox
Checa este código:
'Es otra manera de hacerlo con algo menos de Código
With Combobox1
      .AddItem "4"
      .AddItem "7"
      .AddItem "8"
      .AddItem "9"
      .AddItem "10"
end with
Ya lo probé y si funciona.
Saludos, si tienes alguna otra duda no dudes en escribirme... si odo salió bien, no olvides finalizar la pregunta
Ups, ya vi a que te refieres con "que no se repitan", es que cada vez que esta seleccionado, se agregan los Items, te recomiendo que mejor pongas la lista de los Items que quieres que tenga el Combo en otra hoja, por ejm una hoja llamada "TEMP", y pon este código:
Private Sub ComboBox1_GotFocus()
'Esconde la Hoja, cambia a True para poder ver la hoja
Sheets("Temp").Visible = xlVeryHidden
'Suponiendo que tu lista este desde A2 a A6
ComboBox1.List = Sheets("Temp").Range("A2:A6").Value
End Sub
Ahora si, super comprobadisimo, funciona perfectamente
Otra forma seria poner este código en el evento Open de Thisworkbook:
With Combobox1
      .AddItem "4"
      .AddItem "7"
      .AddItem "8"
      .AddItem "9"
      .AddItem "10"
end with
Ya solo es cuestión de que elijas cual método prefieres
Muchas gracias, ya puedo escoger de la lista del combobox y que se me vea reflejado en la base de datos, ¿solo un detalle a que le cambio a true?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas