Resumen
Para generar una numeración de esquema básica, puede utilizar una fórmula basada en varias funciones de Excel, incluidas COUNTA, IF, MID, FIND y LEN. En el ejemplo que se muestra, la fórmula en D5 es:
=COUNTA($B$5:B5)&"."&IF(B5"",1,MID(D4,FIND(".",D4)+1,LEN(D4))+1)
Nota: esta fórmula solo manejará un esquema de 2 niveles.
Explicación
En el núcleo, esta fórmula genera un número de nivel 1 y nivel 2 y concatena los dos números junto con un punto (".") Como separador. El resultado es un valor como "1,1". El número de "nivel 1" se genera con COUNTA así:
=COUNTA($B$5:B5)
Tenga en cuenta que el rango es una referencia en expansión, por lo que se expandirá a medida que se copia en la columna.
El número de "nivel 2" se genera con este código:
IF(B5"",1,MID(D4,FIND(".",D4)+1,LEN(D4))+1)
Aquí, la función SI se usa para verificar el contenido de B5. Si B5 no está en blanco, significa que tenemos un nuevo encabezado de nivel 1 y SI devuelve 1. En otras palabras, cada vez que tenemos una nueva entrada de nivel 1, reiniciamos la numeración del nivel 2 en 1.
Si el B5 * está * en blanco, necesitamos incrementar el número de nivel 2 usando el valor en la celda de arriba. Esto es un poco complicado, porque el número de esquema es una cadena de texto, no un número. Eso significa que necesitamos extraer el valor con una función de texto antes de poder incrementar. Para ello, usamos la función MID para extraer todo el texto a la derecha del punto ("."), Que localizamos con la función BUSCAR:
MID(D4,FIND(".",D4)+1,LEN(D4))+1
La función LEN se utiliza como una forma sencilla de garantizar todos los caracteres una vez extraído el punto. Observe que luego agregamos 1 directamente al resultado, que sigue siendo texto. Esta operación matemática hace que Excel coaccione el texto a un número, por lo que el resultado es un número incrementado. Finalmente, los números de nivel 1 y nivel 2 se concatenan junto con un punto (".") Como separador.