SolucionUsarUnaMacroEnExcel
QUE HAY JORGE LUIS:
Resolver ese problemilla tuyo no fue tan fácil como pensé pero aquí lo tienes, una macro para que hagas eso que deseas :
Para utilizarla :
- Abre el editor de visual basic, oprime ALT+F11
- Inserta un modulo y pega esta código
Sub SacaItem()
'Pregunta al usuario el rango de celdas a trabajar
miRango = InputBox("Escribe el rango de celdas a trabajar")
'Asugna la hoja activa a una variable
Set miHoja = Worksheets("Hoja1")
'Inici la variable contadora en 1
cont = 1
'Ciclo para recorrer todo el rango
For Each c In miHoja.Range(miRango)
'De cada dato en celda extrae la parte numérica
For i = 1 To Len(c.Value)
char = Mid(c.Value, i, 1)
If IsNumeric(char) Then
num = num & char
End If
Next i
'Compara si el contador es 1, inicia la numeración en celda
'de lo contrario va comparando la parte numérica actual con la anterior
'para ir numerando si son iguales y si son diferentes reinicia el contador a 1
If cont = 1 Then
Cells(c.Row, c.Column + 1) = cont
Else
If num = antnum Then
Cells(c.Row, c.Column + 1) = cont
Else
cont = 1
Cells(c.Row, c.Column + 1) = cont
End If
End If
antnum = num
num = Empty
cont = cont + 1
Next c
End Sub
COMENTARIOS:
- Los datos que utilicé los puse en la columna A y apartir de la fila 2.
- La macro te preguntará que rango deseas trabajar, debiendo escribir, por ejemplo, A2:A10.
- Listo, colocará en la columna B la numeración tal y como lo necesitas.
- En caso de cambies los datos a otra columna no necesitas cambiar nada de la macro, ya que no trabaja con referencias a celdas del tipo A1, B6, etc. usa referencias del tipo Cells(Fila,Columna); solo basta ingresar correctamente el rango.
SALUDOS Y COMENTA SI TE SIRVIÓ O CUALQUIER DUDA
ADRIANO TORRES