Find o vlookup en VBA no encuentran valor que si existe
Como dice el titulo, no puedo hacer que find o vlookup en VBA encuentren un valor en un rango que si existe, de hecho lo busco desde el mismo excel y si me devuelve el valor buscado, quiero agregar que ese problema lo tuve con otro código y lo solucioné de la siguiente forma: num=Val(TextBox6) de esta forma me pasa el valor como numérico y ya lo puede encontrar, mi código es el siguiente:
Private Sub CommandButton3_Click()
Dim crango As Range, num As String
Sheets("CUARENTENA").Select
num = Val(TextBox6)
Set crango = Sheets("CUARENTENA").Columns("U:U")
'.Find(num, LookIn:=xlValues, searchorder:=xlColumns) ' este código lo tengo comentado para agregarlo a crango si quiero usarlo atravez de Find
vbus = Application.VLookup(num, crango, 1, 0)
Sheets("datalist").Unprotect
Sheets("datalist").Range("M1") = num
Sheets("datalist").Protect
'If crango Is Nothing Then ' este código lo tengo comentado para agregarlo a crango si quiero usarlo atravez de Find
If IsError(vbus) Then
MsgBox ("No se ha generado tarjeta roja"), vbCritical, ("AVISO | TQ")
Else
If Sheets("datalist").Range("N1") = 1 Then
Me.Height = 250
Me.Width = 600
Else
If Sheets("datalist").Range("N1") = 0 Then
MsgBox "Este folio no han capturado el COPQ", vbCritical, ("AVISO | TQ")
Me.Height = 157
Me.Width = 162
End If
End If
End If
End Sub
Este es mi archivo con los formularios https://drive.google.com/open?id=1O45rsPY8FqheR9eQTCLMcva6WW-lK80u , lo adjunto por si me pueden ayudar sea mas entendible, el menú se desactiva dando click en el "Punto" que esta a la izquierda de la letra C en el título, el formulario en cuestion se llama QualityV.