Validar existencia
Publicado por Alberto (88 intervenciones) el 21/11/2007 13:49:26
Buenos dias, tengo un problema a la hora de validar los datos en un comboBox de un usf en excel, es lo siguiente:
1) es un usf para ver precios en una lista de excel
Con el codigo que os adjunto controlo que el que el codigo exista el problema es que si lo pongo en el evento charge (que es donde lo tengo ya que se me rellenan automaticamente una serie de textbox) en cuanto pongo el primer numero ya me esta informando que el codigo no existe, en que evento lo debo de colocar para que lo aga al perder el foco o aun mejor cuando se hayan escrito como minimo 6 digitos (es el minimo que tienen los codigos)
Le he probado con click pero no funciona, con nofocus (no me ha dado error) pero tampoco funciona y no se si este es el evento para cuando pierda el foco, ya no se por donde tirar.
Mil gracias de antemano
Alberto
Private Sub ComboBox1_????????()
Dim i As Integer
Dim j As Integer
Dim final As Integer
For i = 6 To 10000
If Hoja1.Cells(i, 1) = "" Then
final = i - 1
Exit For
End If
Next
For j = 2 To final
If Hoja1.Cells(j, 1) <> ComboBox1 Then
MsgBox "El CODIGO solicitado no existe ó ha sido descatalogado", vbCritical, "ATENCIÓN"
ComboBox1.SetFocus
Exit Sub
Exit For
End If
Next
End Sub
1) es un usf para ver precios en una lista de excel
Con el codigo que os adjunto controlo que el que el codigo exista el problema es que si lo pongo en el evento charge (que es donde lo tengo ya que se me rellenan automaticamente una serie de textbox) en cuanto pongo el primer numero ya me esta informando que el codigo no existe, en que evento lo debo de colocar para que lo aga al perder el foco o aun mejor cuando se hayan escrito como minimo 6 digitos (es el minimo que tienen los codigos)
Le he probado con click pero no funciona, con nofocus (no me ha dado error) pero tampoco funciona y no se si este es el evento para cuando pierda el foco, ya no se por donde tirar.
Mil gracias de antemano
Alberto
Private Sub ComboBox1_????????()
Dim i As Integer
Dim j As Integer
Dim final As Integer
For i = 6 To 10000
If Hoja1.Cells(i, 1) = "" Then
final = i - 1
Exit For
End If
Next
For j = 2 To final
If Hoja1.Cells(j, 1) <> ComboBox1 Then
MsgBox "El CODIGO solicitado no existe ó ha sido descatalogado", vbCritical, "ATENCIÓN"
ComboBox1.SetFocus
Exit Sub
Exit For
End If
Next
End Sub
Valora esta pregunta


0