/ / Rolling Average u programu Excel VBA

Rolling prosjek u Excelu VBA

U nastavku ćemo pogledati program u Excel VBA koji stvara a prosljeđivanje prosječne tablice, Stavite gumb naredbe na svoj radni list i dodajte sljedeću liniju koda:

Range("B3").Value = WorksheetFunction.RandBetween(0, 100)

Ova linija koda unosi slučajni broj između 0i 100 u stanicu B3. Želimo da Excel VBA preuzme novu vrijednost zaliha i stavi je na prvu poziciju prosječne tablice za valjanje. Sve ostale vrijednosti trebale bi se kretati dolje na jednom mjestu, a zadnju vrijednost treba izbrisati.

Rolling prosječna tablica u Excelu VBA

Rolling prosječna tablica u Excelu VBA

Izradite događaj promjene radnog lista. Kôd dodan u događaj promjene radnog lista izvršit će Excel VBA kada promijenite ćeliju na radnom listu.

1. Otvorite Visual Basic Editor.

2. Dvaput kliknite na Sheet1 (Sheet1) u Project Exploreru.

3. Na lijevom padajućem popisu odaberite Radni list. Odaberite Promijeni s desnog padajućeg popisa.

Radni list Promjena događaja u programu Excel VBA

Dodajte sljedeće retke koda u događaj promjene radnog lista:

4. Navedite varijablu nazvanu novu vrijednost tipa Integer i dva raspona (firstfourvalues ​​i lastfourvalues).

Dim newvalue As Integer, firstfourvalues As Range, lastfourvalues As Range

5. Event Promjena radnog lista sluša sve promjene na Sheet1. Želimo da Excel VBA nešto učini ako se nešto promijeni u ćeliji B3. Da biste to postigli, dodajte sljedeću liniju koda:

If Target.Address = "$B$3" Then

6. Inicijaliziramo novu vrijednost s vrijednošću ćelije B3, prvo vrijednosti s rasponom ("D3: D6") i zadnje vrijednosti s rasponom ("D4: D7").

newvalue = Range("B3").Value
Set firstfourvalues = Range("D3:D6")
Set lastfourvalues = Range("D4:D7")

7. Sada dolazi jednostavan trik. Želimo ažurirati prosječnu prosječnu tablicu. To možete postići zamjenom zadnjih četiri vrijednosti s prve četiri vrijednosti tablice i stavljanjem nove vrijednosti zaliha na prvu poziciju.

lastfourvalues.Value = firstfourvalues.Value
Range("D3").Value = newvalue

8. Ne zaboravite zatvoriti if izjavu.

End if

9. Konačno, upišite formulu = AVERAGE (D3: D7) u ćeliju D8.

10. Ispitajte program klikom na gumb naredbe.

Također pročitajte: