Como separar una serie de numeros por partes.

Para Dante Amor.

Esta serie no es de una fecha. Viene asi de un msdos pero lo que necesito es separarlo y/o estando junto que lo sume.

ejemplo: 2 1 9 1 0 0 0 0 0 0 1 0 0 estas estan separadas por que pueden ser de hasta dos digitos.   si lo leo completo =15 si leo los tres primeros = 11 asi sucesivamente. Ya encontre la respuesta a lo que te pedia inicialmente use la formula extraer.

1 respuesta

Respuesta
1

H o l a:

No entendí qué quieres extraer.

El 15 no sé de dónde lo obtuviste, ya que si sumas los números en total son 14.

Tampoco entendí el otro ejemplo, ¿si les los tres primeros = 11?

Puedes explicar.

Discúlpame, es que lo sume apurado pero si eso es lo que necesito que lo sume completo o por parte esto es exactamente las carreras que se anotan en un juego de pelota por entradas.por eso esta separado por que se puede anotar hasta dos dígitos por entrada. Ejemplo si lo que necesito sumar son los tres primeros inn y/u otras variantes.

Puedes explicar todo lo que necesitas pero con ejemplos reales, dime qué datos tienes, exactamente en dónde los tienes (fila, columna) y qué esperas de resultados.

Si puedes poner imágenes, mejor.

para dante

2 1 9 1 0 0 0 0 0 0 1 0 0 esto esta en la columnaB2  y quiero que en la columnaC2 me calcule =14 si lo quiero sumar todo. o por parte 2 1 9 =12;   2 1 9 1 0 0 0 0 0 0 1=14 asi sucesivamente

Pero sigo sin entender a qué te refieres por partes.

Entiendo que tienes una serie de números, si quieres sumar todo que sume uno a uno todos los números. Pero dieces, "o por parte 2 1 9 =12;", ¿En dónde le vas a decir que sume 3 ó 4 ó todos los números? ¿O cuál es tu idea?

Otra duda, ¿los números están separados por un espacio?

Haber si lo siguiente es lo que necesitas.

Pon la siguiente función en un módulo:

Function sumate(celda As Range, Optional cuantos As Integer)
'Por.Dante Amor
    nums = Split(celda, " ")
    If cuantos > 0 And cuantos < UBound(nums) Then
        n = cuantos - 1
    Else
        n = UBound(nums)
    End If
    For i = LBound(nums) To n
        a = a + CDbl(nums(i))
    Next
    sumate = a
End Function

Sigue las Instrucciones para una Función

  1. Abre tu libro de excel
  2. Para abrir VBa y poder pegar la función, Presiona Alt + F11
  3. En el menú elige Insertar / Módulo
  4. En el panel del lado derecho copia la función
  5. En cualquier celda utiliza la función, como cualquier otra función de excel

Si quieres la suma de todos, en la celda B2 escribe lo siguiente:

=Sumate(A2)

Si quieres la suma de los 3 primeros, en la celda B2 escribe lo siguiente:

=sumate(A2;3)

Cambia el 3 por los primeros números que quieras que se sumen.


ok , eso mismo es lo que necesitaba,muchas gracias...

Si la macro resuelve lo que necesitas, r ecuerda valorar la respuesta.

Si los números están separados por que puede ser de hasta dos dígitos. Esto lo saque de un txt donde viene en una sola línea todo estos números pero que su traducción es separado de dos en dos

Para dante amor

Discúlpame pero es que he estado afuera por un tiempo y no he podido revisar. Esa macro me da error. No se si al principio te comentaba que ese dato es de una cadena de texto de una columna.

Qué mensaje de error te aparece.

Presiona depurar y me dices en qué línea de la macro se detiene.

Pon una imagen para ver cómo tienes los datos

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas