Buscar un dato en una hoja

Saludos, que estés bien, te molesto otra vez, mi consulta es que tengo que realizar una búsqueda en una hoja pero con un rango amplio, como por ejemplo de la A1 a la CO200, y si encuentra el dato me rechaze esl ingreso, yo tengo este código pero me lo busca en una sola columna
  Private Sub CommandButton3_Click()
Dim i As Integer
Dim final As Integer
Dim j As Integer
Dim ii As Integer
Dim final1 As Integer
For i = 1 To 1000
If Hoja2.Cells(i, 1) = "" Then
final = i
Exit For
End If
Next
For j = 2 To final
If Hoja2.Cells(j, 1) = TextBox1 Then
MsgBox "Ingrese otro codigo", vbOKOnly + vbInformation, "**este ya existe"
TextBox1.BackColor = &HFF00&
Exit Sub
Exit For
End If
Next
Bueno el resto es el asunto del copiado de los datos en las hojas, acá me busca si el código esta ingresado pero me lo hace en un sola columna.
Gracias de antemano
1

1 respuesta

Respuesta
1
Que te parece lo siguiente
Private Sub CommandButton3_Click()
Dim rDonde as Range, rIter as Range
Set rDonde = Hoja2.Range("A1:CO200")
For Each rIter in RDonde
  If rIter = TextBox1 Then
    MsgBox "Ingrese otro codigo", vbOKOnly + vbInformation, "**este ya existe"
    TextBox1.BackColor = &HFF00& 
    Exit Sub 
  End If
Next rIter
Set rDonde = Nothing
Set rIter = Nothing
End Sub
También está la opción Find pero la verdad que no siempre funciona como uno cree y si el rango no es muy grande no conviene (es más rápido pero a veces falla)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas