Fórmula O Macro que confirme nombre en una celda y devuelva un numero y una letra

Necesito una fórmula o macro que confirme si hay un nombre en una celda especifica, entonces tome la primera letra del nombre y le asigne un numero secuencial más el año actual y lo coloque en otra celda.

Ejemplo: si se escribe el nombre ¨máximo¨en la celda B1, debe aparecer en la celda A1 (M1-15). Y si se escribe otro nombre salteado en la celda B5, que asigne ahí el siguiente numero secuencial más la letra.

Ej: B5=juan, entonces seria(J2-15)

1 Respuesta

Respuesta
1

Te anexo la macro para que la pongas en los eventos de tu hoja.

Private Sub Worksheet_Change(ByVal Target As Range)
'Por.Dante Amor
    If Target.Count > 1 Then Exit Sub
    If Target.Value = "" Then
        Cells(Target.Row, "A") = ""
        Exit Sub
    End If
    mayor = 1
    If Not Intersect(Target, Columns("B")) Is Nothing Then
        For i = 1 To Range("A" & Rows.Count).End(xlUp).Row
            If Cells(i, "A") <> "" Then
                If InStr(1, Cells(i, "A"), "-") > 0 Then
                    datos = Split(Cells(i, "A"), "-")
                    num = Val(Mid(datos(0), 2))
                    If num > mayor Then
                        mayor = num
                    End If
                End If
            End If
        Next
        Cells(Target.Row, "A") = Left(Target, 1) & mayor + 1 & "-" & Format(Date, "yy")
    End If
End Sub

Sigue las Instrucciones para poner la macro en los eventos de worksheet

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
  4. Del lado derecho copia la macro

S a l u d o s . D a n t e A m o r

Recuerda valorar la respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas