lunes, 20 de agosto de 2018

¿Cómo contar los saltos de línea en una celda de Excel?


En este momento estoy haciendo una herramienta de facturación, la cual al generar una factura solo puede contener cierta cantidad de lineas. 

Pero el problema es cuando le dan salto de linea (o Enter) dentro de una celda y se generan 2 lineas o más en una misma celda.
Entonces, necesitaba contar la cantidad de saltos de lineas dentro de una celda, y encontré lo siguiente en GOOGLE que todo lo sabe...

Para contar saltos de línea en una celda, puede probar esta fórmula.

Seleccione una celda al lado de la cadena que desea contar saltos de línea, escriba 

=LEN(A2)-LEN(SUSTITUTO(A2,CHAR(10),""))

=LARGO(A2)-LARGO(SUSTITUIR(A2;CARACTER(10);""))


Donde:

 - CARACTER(10) ..... Sirve para indicar el salto de linea, el caracter 10 es el Enter 
                                     dentro de una celda

- SUSTITUIR(A2;CARACTER(10);"")...... Sirve para indicar que al texto que esté en la
                                                                    celda A2, reemplace todos los saltos de línea por
                                                                    nada, o vacio.

- LARGO(A2)............. Indica cuantos caracteres tiene la celda A2, los espacios y los saltos
                                    de linea también son contabilizados.

LARGO(SUSTITUIR(A2;CARACTER(10);""))...... Indica cuantos caracteres tiene la celda
                                                                                   A2, después de haber quitado todos los
                                                                                  saltos de linea.



Cuente los saltos de línea en la celda con VBA

Aquí hay un código de VBA que también puede contar los saltos de línea en una celda en Excel.

1. Presiona Alt + F11 para habilitar Microsoft Visual Basic para aplicaciones ventana.

2. Hacer clic en el menú Insertar / Modulo y escriba el siguiente código

Public Sub CountLines()

Dim VLargo As Double
Dim VLargoSinSaltos As Double

    With Range("A2")
        VLargo = Len(.Text)
        VLargoSinSaltos = Len(Replace(.Text, Chr(10), ""))
    End With

    MsgBox "Encontramos " & VLargo VLargoSinSaltos & " saltos de línea"

End

3. Presiona F5 y aparece un cuadro de diálogo para indicarle el número de saltos de línea.

Espero que les sirva.

Ing. Enrique Neciosup Morales