Suma vba y valor en un label del userform

skeut -  
 skeut -
¡Hola a todos!

Debo agregar una funcionalidad en una pequeña aplicación de Excel;
se trata de sumar una columna y mostrar el resultado en un label del userform. He buscado bien, pero no me las arreglo, ¿alguien puede ayudarme por favor?

Así que se trata de
1- sumar
2- recuperar la suma en el label

gracias de antemano por su ayuda.
que tengan un buen día a todos.

5 respuestas

  1. skeut
     
    Gracias por tu respuesta Armojax,

    efectivamente funciona como propones; el problema es que el total no aparece en la hoja (ya que hay adiciones/suprime regularmente filas), me gustaría hacer la suma justo antes de mostrar el resultado en la etiqueta.

    ¿Es posible?

    a+. skeut
    2
  2. Armojax
     
    Hola skeut,

    Si tu total está en la fila 6, columna 1 de la hoja Feuil1:

    Label.Caption = Sheets("Feuil1").Cells(6, 1).Value
    1
  3. skeut
     
    - Solo tengo un único formulario de usuario para varias hojas.
    - El rango a sumar siempre es el rango G2:G10000.
    - En principio, no hay filas vacías entre los diferentes tuples.

    ¿Es necesario nombrar el rango o podemos identificar las celdas por G2:G10000?

    Espero que estas precisiones respondan a tus preguntas y te agradezco de antemano por tu valiosa ayuda.

    ¡Hasta luego! Skeut
    1
    1. Armojax
       
      Aquí estoy de nuevo,

      He desayunado y tomado mi café, estoy bien...

      Entonces, suponiendo que tu hoja se llama "Hoja" y que tu etiqueta se llama "Etiqueta", puedes escribir:

      Dim Rango As Range
      Set Rango = Sheets("Hoja").Range("G2:G10000")
      Etiqueta.Caption = Application.WorksheetFunction.Sum(Rango)

      En mi casa funciona.
      Espero que también te funcione bien a ti

      Armojax.
      0
  4. Armojax
     
    OK. Solo una pequeña pregunta antes de responderte: ¿Cómo puedes identificar las celdas que quieres sumar?
    ¿Siempre están en la misma hoja? ¿En la misma columna? ¿Cómo se puede reconocer el rango correspondiente? ¿Siempre tiene la misma dirección la primera celda? ¿Hay filas vacías después de la última fila del rango a sumar? Etc.

    Armojax.
    0
  5. skeut
     
    Armojax,

    ¡Esta es una respuesta de clase mundial!

    Funciona perfectamente; solo reemplacé <<Sheets("Hoja")>> por <<ActiveSheet()>>. Así, me da el total en la hoja en la que estoy.

    Gracias de nuevo y tal vez hasta la próxima.
    Skeut
    0