Código para extraer dato de columna anterior
Les solicito su ayuda en este tema. Tengo una tabla, donde la columna A contiene números de ficha, y la columna C tiene números de identificación personal. En un userform, tengo un textbox donde anoto un número de identificación personal y un botón que activa la siguiente macro, avisándome si ese número está o no en el registro.
Private Sub ComprobarRut_Click() fila = Application.WorksheetFunction.CountA(Range("C:C")) + 1 For i = 1 To fila Next i Dim UltFil As Long UltFil = Hoja1.Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row If Application.WorksheetFunction.CountIf(Hoja1.Range("C1:C" & UltFil), Me.TextBox1) >= 1 Then MsgBox "Este RUT ya está REGISTRADO. Su número de Ficha es " & Cells(i, 1).Value, 16, "" ElseIf Application.WorksheetFunction.CountIf(Hoja1.Range("C1:C" & UltFil), Me.TextBox1) = 0 Then MsgBox "RUT DISPONIBLE", 64, "" End If End Sub
Agregué un dato en el primer MsgBox, que busco pueda darme el número de ficha asociado a ese número de identificación personal, pero solo me indica el número de ficha de la ultima fila libre. Me refiero a este MsgBox:
MsgBox "Este RUT ya está REGISTRADO. Su número de Ficha es " & Cells(i, 1).Value, 16, ""
¿Podrían ayudarme a que el código final de ese MsgBox me muestre el número de ficha (que está en la columna A) asociado al número que busco en la columna C?
Adjunto una captura de pantalla en la que se muestra el resultado de este código, mostrando que el resultado no muestra el número de ficha que necesito. Para el RUT que busco, el MsgBox debería decirme que el número de Ficha es el 109.
NOTA: El dato "RUT" está en la columna C, y mediante una fórmula le doy el formato de RUT definitivo en la columna D.