Kumulatiivinen solu (kumulatiivinen)

Sisällys

Melko usein syntyy tilanne, kun joudumme summaamaan (keräämään) useita arvoja, jotka on syötetty peräkkäin yhteen soluun:

Nuo. Jos esimerkiksi syötät luvun 1 soluun A5, luvun 1 pitäisi näkyä B15:ssä. Jos kirjoitat sitten luvun 1 A7:ään, soluun B1 pitäisi ilmestyä 22 ja niin edelleen. Yleensä mitä kirjanpitäjät (eikä vain he) kutsuvat kumulatiiviseksi kokonaissummaksi.

Voit toteuttaa tällaisen tallennussolun akun käyttämällä yksinkertaista makroa. Napsauta hiiren kakkospainikkeella välilehteä, jossa solut A1 ja B1 sijaitsevat, ja valitse pikavalikosta Lähdeteksti (Lähdekoodi). Kopioi ja liitä yksinkertainen makrokoodi avautuvassa Visual Basic -editoriikkunassa:

Yksityinen alityöarkin_muutos(ByVal Target Excel.Range) With Target If .Address(False, False) = "A1" Then If IsNumeric(.Arvo) Sitten Application.EnableEvents = False Range("A2").Arvo = Range(" A2").Value + .Value Application.EnableEvents = Todellinen loppu, jos loppu, jos lopuksi loppuosa  

Solujen A1 ja A2 osoitteet voidaan tietysti korvata omillasi.

Jos sinun on seurattava tietojen syöttämistä ja tehtävä yhteenveto yksittäisistä soluista, vaan kokonaisista alueista, makroa on muutettava hieman:

Yksityinen alityöarkin_muutos(Arvo-kohteena Excel.Alue) Jos ei leikkaa(kohde, alue("A1:A10")) ei ole mitään, sitten jos on numeerinen(tavoite.arvo) sitten Application.EnableEvents = Väärä Target.Offset(0, 1) .Arvo = Target.Offset(0, 1).Arvo + Target.Value Application.EnableEvents = True End If End If End Sub  

Oletetaan, että tiedot syötetään alueen A1:A10 soluihin ja syötetyt luvut summataan oikealla viereiseen sarakkeeseen. Jos sinun tapauksessasi se ei ole vierekkäinen, lisää siirtoa oikealle Offset-operaattorissa – korvaa 1 suuremmalla numerolla.

  • Mitä makrot ovat, mihin makrokoodi lisätään VBA:ssa, miten niitä käytetään?

Jätä vastaus