Saltar al contenido

Rango de ciertas columnas solamente, para Combobox


Recommended Posts

publicado

Hola amigos.

Tengo este codigo que llena el ComboBox

        Private Sub CargaCombus() ' CARGAR COMBOBOX
Dim cargo As Variant
Dim anchura As Variant
With Base
cargo = .Range("A2:H2") ' ("A2:B2,E2:H2") aqui el rango
End With
With cmbCampo
.List = WorksheetFunction.Transpose(cargo)
'.Text = ""
End With
End Sub[/CODE]

Son 8 columnas desde la A a la H

Lo que pretendo es que en el combo solo se vean (se llene) las columnas A, B, E, F, G, H,

publicado

No se puede directamente, pero siempre hay una solución:

For Each Celda In Base.Range("A2:B2,E2:H2"): cmbCampo.AddItem Celda.Value: Next[/CODE]

publicado

me quedo así, tu me diras si algo está mal y que es

        Private Sub CargaCombus() ' CARGAR COMBOBOX
Dim [COLOR="#FF0000"]celda[/COLOR] As Variant
Dim anchura As Variant
With Base
For Each [COLOR="#FF0000"]celda[/COLOR] In Base.Range("A2:B2,E2:H2"): cmbCampo.AddItem celda.Value: Next
End With
With cmbCampo
End With
End Sub[/CODE]

Aqui Dim celda As Variant

estaba la variable cargo lo cambie por [color=#FF0000]celda[/color] ¿esta bien?

porque me decia que habia que declarar celda

Si esta bien, cerrado el tema, si algo esta mal, agradezco la respuesta

publicado

Con esto es suficiente:

Private Sub CargaCombus() ' CARGAR COMBOBOX

Dim Celda As Range
For Each Celda In Base.Range("A2:B2,E2:H2")
cmbCampo.AddItem Celda.Value
Next

End Sub


[/CODE]

publicado

Sabias que me gustan los codigos efectivos y cortos.

Muy bien, tenia demas una variable que no me di cuenta que estaba demas en ese evento y lo demas en una sola linea. Los With y End With demas, es decir, una cesta con basura habia dejado yo jejejejjeej

Gracias macro, agradecido, y LISTO

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.