Excel - Escribir tres letras y que aparezca número correlativo

 
Vista:
sin imagen de perfil
Val: 13
Ha aumentado 1 puesto en Excel (en relación al último mes)
Gráfica de Excel

Escribir tres letras y que aparezca número correlativo

Publicado por ELENA (8 intervenciones) el 07/08/2019 12:48:17
Buenos días.

Tengo en excel una registro en el que le doy nombre unas pruebas pero el nombre de esta pruebas es un código de tres letras mas 6 números, y me gustaría que al escribir el código de tres letras se completará de manera automática el número teniendo en cuenta que tendría que sumar al último número usado que no tiene porque estar en la fila inmediatamente superior.
Por ejemplo tengo:

ZZE190001
ZZF190002
ZZP190003

Pues me gustaría que al escribir ZZE, ZZF o ZZP ya apareciera el siguiente numero.

Gracias,
Un saludo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Escribir tres letras y que aparezca número correlativo

Publicado por Antoni Masana (2477 intervenciones) el 07/08/2019 13:29:38
se puede usar esta macro:

1
2
3
Private Sub Worksheet_Change(ByVal Target As Range)
 
End Sub

Que se ejecuta al salir de la edición de una celda, verifique la columna y busque el ultimo código introducido para poner el número.

Sube un ejemplo porque eso ayuda mucho.

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 13
Ha aumentado 1 puesto en Excel (en relación al último mes)
Gráfica de Excel

Escribir tres letras y que aparezca número correlativo

Publicado por ELENA (8 intervenciones) el 07/08/2019 13:39:41
No es posible hacerlo sin macros? Utilizando alguna formula......
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 15
Ha aumentado 1 puesto en Excel (en relación al último mes)
Gráfica de Excel

Escribir tres letras y que aparezca número correlativo

Publicado por Joan Carles (8 intervenciones) el 07/08/2019 17:03:51
El problema es que si no me equivoco, las formulas son intrínsecas al registro de una celda, por lo que si tu introduces una formula en una celda, ahí ya no puedes introducir un valor, dado que el valor que resulta es el de la formula.

No se si me he explicado bien :)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Escribir tres letras y que aparezca número correlativo

Publicado por Antoni Masana (2477 intervenciones) el 07/08/2019 18:38:25
Como poder se puede pero necesitas tres columnas:

- la 1ª para introducir las letras,
- la 2ª con formula para calcular el numero,
- la 3ª con formula para componer el código con los datos de las otras dos columnas.

Y no es elegante.

Lo mejor es escribir las tres letras, dar intro y que salgan las letras y los números en la misma celda y eso solo lo hace una macro.

Saludos.
\\//
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 13
Ha aumentado 1 puesto en Excel (en relación al último mes)
Gráfica de Excel

Escribir tres letras y que aparezca número correlativo

Publicado por ELENA (8 intervenciones) el 08/08/2019 09:08:08
Muchas gracias por las respuestas.

No entiendo como completar el código. Adjunto ejemplo.


PRUEBA
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Antoni Masana
Val: 4.908
Oro
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Escribir tres letras y que aparezca número correlativo

Publicado por Antoni Masana (2477 intervenciones) el 08/08/2019 09:45:35
Te pongo la macro y un archivo de ejemplo.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
Option Explicit
 
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim Fila As Long, Letras As String, a As Long, Num As Long
 
    ' ---&--- Si no es la columna A sale
 
    If Target.Column > 1 Then Exit Sub
 
    ' ---&--- Como minimo tiene que haber 3 caracteres
 
    If Len(Range(Target.Address)) < 3 Then Exit Sub
 
    ' ---&--- Guarda la fila y las Letras
 
    Fila = Target.Row
    Letras = Left(Target.Text, 3)
 
    ' ---&--- Busca hacia atras la ultima a partir de la fila 3
    '         Si esta en la fila 2 se ha de poner el numero a mano
    '         Si el numero tiene CEROA a la izquierda se tendra que usar el FORMAT
 
    Application.EnableEvents = False
    For a = Fila - 1 To 2 Step -1
        If Len(Cells(a, 1)) > 0 Then
           Num = Val(Mid$(Cells(a, 1), 4)) + 1
           Range(Target.Address) = Letras & Num
           Exit For
        End If
    Next
    Application.EnableEvents = True
End Sub

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Hector Madriz
Val: 575
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Escribir tres letras y que aparezca número correlativo

Publicado por Hector Madriz (137 intervenciones) el 08/08/2019 23:46:36
Buen día, prueba esto:

1
2
3
4
5
6
Private Sub Worksheet_Change(ByVal Target As Range)
   On Error Resume Next
   If Target.Row >= 2 And Len(Target.Value) = 3 Then _
      If IsNumeric(Mid(Cells(Target.Row - 1, 1), 4)) Or Target.Row = 2 Then _
         Target.Value = UCase(Target.Value) & IIf(Target.Row > 2, Format((Val(Mid(Cells(Target.Row - 1, 1), 4)) + 1), "000000"), "000001")
End Sub

“Escribe las 3 primeras letras y pulsa <enter>”

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Hector Madriz
Val: 575
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Escribir tres letras y que aparezca número correlativo

Publicado por Hector Madriz (137 intervenciones) el 09/08/2019 00:11:49
Agrego condición {Target.Column = 1} :


1
2
3
4
5
6
Private Sub Worksheet_Change(ByVal Target As Range)
   On Error Resume Next
   If Target.Row >= 2 And Len(Target.Value) = 3 And Target.Column = 1 Then _
      If IsNumeric(Mid(Cells(Target.Row - 1, 1), 4)) Or Target.Row = 2 Then _
         Target.Value = UCase(Target.Value) & IIf(Target.Row > 2, Format((Val(Mid(Cells(Target.Row - 1, 1), 4)) + 1), "000000"), "000001")
End Sub

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar