Error al Identificar la fila (Row) en la función Cells tomando el valor desde un ComboBox

12/07/2007 - 00:35 por Contaduria | Informe spam
Hola Gente del Foro:

En un Userform tengo un ComboBox de 2 columnas, al cual le incorporo los
datos con el siguiente código:

Private Sub UserForm_Activate()

Dim cXelda As Range
Dim i As Long
i = 0

ComboBox1.Clear

With ActiveSheet
For Each cXelda In .Range("f4:f" & .[F65536].End(xlUp).Row)
If cXelda.Offset(0, 1) = "NO EN" Then
With ComboBox1
.AddItem Format(cXelda, "#,##00.00")
.List(i, 1) = cXelda.Row
End With
i = i + 1
End If
Next
End With

End Sub

El BoundColumn esta parametrizado como 2, por lo que el valor que toma
ComboBox1 es el número de fila del registro (cXelda.Row). Ahora, cuando yo
selecciono un item del ComboBox1 quiero que se muestren ciertos datos del
registro en unas Label, lo cual pretendo hacer con un código como este:

Private Sub ComboBox1_Change()

Dim X As Integer
X = ComboBox1.Value

Label7 = Format(ActiveSheet.Cells(X, 6).Value, "#,#00.00")
Label5.Caption = Format(ActiveSheet.Cells(X, 5), "dd/mm/yyyy")
Label6 = ActiveSheet.Cells(X, 7).Value

End Sub

Pero, luego de intentar con varias variantes, no logro que funcione de
ninguna manera, ya que siempre me da un error en las lineas donde esta la
función Cells, ya que no reconoce el valor de la variable como un valor
válido para ubicar el número de fila. No entiendo porque, porque el valor
del ComboBox1 es simplemente el número de fila. Probé varias cosas, como
poner directamente en la función Cells ComboBox1, ComboBox1.Value,
Val(ComboBox1), etc, etc, pero nada parece funcionar.
Que estoy haciendo mal??
Desde ya muchas gracias!

Mariano
 

Leer las respuestas

#1 Ivan
12/07/2007 - 02:22 | Informe spam
hola Mariano,

no estoy seguro, pero, a la espera de quien te 'guio' en el codigo o
de cualquier otro experto, prueba a poner el textcolumn del combo a 2
(y por supuesto convierte a valor el texto del combo, como comentas
Val(combobox1))

a ver si hay suete
un saludo
Ivan

PD:(y solo a titulo informativo) si no me equivoco, Cells no es una
funcion, sino una propiedad del conjunto Range que lo que hace es
devolver otro objeto Range. Como te digo, es solo a titulo
informativo, que creo que (al menos a mi ) nunca viene mal.

Preguntas similares