logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

VBA suma komórek od aktywnej do ostatniej zapisanej

Nazarenus 26 Lut 2020 19:47 759 3
REKLAMA
  • #1 18495522
    Nazarenus
    Poziom 2  
    Posty: 2
    Ocena: 1
    Witam!
    Potrzebuję pomocy w takiej sprawie:
    mam w jakiejś kolumnie nieokreśloną ilość zapisanych jedna po drugiej komórek i usiłuję napisać makro, które zwróci w aktualnej komórce sumę komórek od pierwszej powyżej aktualnej do ostatniej (w górę) zapisanej komórki. Próbowałem łączyć
    Range(Selection, Selection.End(xlUp)).Select
    z
    ActiveCell.FormulaR1C1 = "=SUM(R[-6]C:R[-1]C)"
    Problem mam z podaniem prawidłowego zakresu: od komórki A20 (na przykład) do ctrl+strzałka w górę...

    Proszę o pomoc
  • REKLAMA
  • Pomocny post
    #2 18495696
    clubs
    Poziom 38  
    Posty: 2219
    Pomógł: 629
    Ocena: 406
    A tak próbowałeś?
    Kod: VBScript
    Zaloguj się, aby zobaczyć kod
  • REKLAMA
  • #3 18495758
    Nazarenus
    Poziom 2  
    Posty: 2
    Ocena: 1
    A właśnie! Brakuje mi wiedzy...
    Dzięki clubs!!!
  • #4 18496492
    kinggustav
    Poziom 27  
    Posty: 796
    Pomógł: 93
    Ocena: 93
    To ja proponuję w oddzielnych krokach (zakładam, że kolumnę masz na sztywno, jeżeli nie wyznacz ją z ActiveCell):
    Najpierw wyznaczamy wiersz początkowy: Y1=ActiveCell.Row-1
    Potem końcowy: Y2=Cells(Rows.Count, X).End(xlUp).Row
    A na koniec złóż z tego Range dowolnym poprawnym sposobem, np jak wyżej. Da się zapisać w jednej instrukcji, ale proponuję najpierw dokładnie zrozumieć, a potem pisać "oszczędnie".
REKLAMA