Como usar Select case con la función Len(Combobox1).Value

Quiero capturar el número de cuenta usando como separador el guion según la estructura predefinida en la Hoja2 de mi libro de contabilidad dentro del evento change pero no se en que estoy fallando al usar Select Case pues quisiera que cuando voy tecleando me adicione el guion según la estructura que elegí. En este caso elegí 2 dígitos para el grupo; 3 dígitos para el mayor; 3 dígitos para la cuenta y 3 dígitos para la subcuenta y no resulta. El código que escribí es el siguiente como dato CB_NumCta es un combo box.

Private Sub CB_NumCta_Change()

Dim Fila, Final As Long
Dim Encontrado As Boolean

Dim NivelGrupo, NivelMayor, NivelCuenta, NivelSubcuenta As Long
With Hoja2
NivelGrupo = .Range("P35").Value
NivelMayor = .Range("T35").Value
NivelCuenta = .Range("X35").Value
NivelSubcuenta = .Range("AB35").Value
End With
Select Case Len(CB_NumCta.Value)
Case NivelGrupo
CB_NumCta.Value = CB_NumCta.Value & "-"
Case NivelMayor
CB_NumCta.Value = CB_NumCta.Value & "-"
Case NivelCuenta
CB_NumCta.Value = CB_NumCta.Value & "-"
End Select

ValidarCuenta
Me.CB_NumCta.BackColor = &H80000005
If Me.CB_NumCta = Empty Then
Me.CB_NomCta = Empty
Me.CB_NivCta = Empty
Exit Sub
End If
Final = nReg(Hoja3, 2, 1) - 1
For Fila = 2 To Final
If Hoja3.Cells(Fila, 1) = Me.CB_NumCta Then
Encontrado = True
Me.CB_NomCta = Hoja3.Cells(Fila, 2)
Me.CB_NivCta = Hoja3.Cells(Fila, 6)
Exit For
End If
Next
If Encontrado = False Then
Me.CB_NomCta = ""
Me.CB_NivCta = ""
End If
End Sub

1 respuesta

Respuesta

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas