Rollend gemiddelde in Excel VBA - Eenvoudige Excel-macro's

Inhoudsopgave

Hieronder zullen we kijken naar een programma in Excel VBA dat creëert een voortschrijdende gemiddelde tafel. Plaats een opdrachtknop op uw werkblad en voeg de volgende coderegel toe:

Bereik ("B3"). Waarde = WerkbladFunctie.RandBetween(0, 100)

Deze coderegel voert een willekeurig getal tussen 0 en 100 in cel B3 in. We willen dat Excel VBA de nieuwe voorraadwaarde neemt en deze op de eerste positie van de voortschrijdende gemiddelde tabel plaatst. Alle andere waarden moeten één plaats naar beneden worden verplaatst en de laatste waarde moet worden verwijderd.

Maak een werkbladwijzigingsgebeurtenis. Code die is toegevoegd aan de werkbladwijzigingsgebeurtenis, wordt uitgevoerd door Excel VBA wanneer u een cel op een werkblad wijzigt.

1. Open de Visual Basic-editor.

2. Dubbelklik op Blad1 (Blad1) in de Projectverkenner.

3. Kies Werkblad in de linker vervolgkeuzelijst. Kies Wijzigen in de rechter vervolgkeuzelijst.

Voeg de volgende coderegels toe aan de werkbladwijzigingsgebeurtenis:

4. Declareer een variabele met de naam nieuwewaarde van het type Integer en twee bereiken (eerste vier waarden en laatste vier waarden).

Nieuwe waarde dimmen als geheel getal, eerste vier waarden als bereik, laatste vier waarden als bereik

5. De Worksheet Change Event luistert naar alle wijzigingen op Blad1. We willen alleen dat Excel VBA iets doet als er iets verandert in cel B3. Voeg hiervoor de volgende coderegel toe:

Als Target.Address = "$B$3" Dan

6. We initialiseren nieuwe waarde met de waarde van cel B3, eerste vier waarden met Bereik ("D3: D6") en laatste vier waarden met Bereik ("D4: D7").

nieuwe waarde = Bereik ("B3"). Waarde
Stel eerste vier waarden in = Bereik ("D3:D6")
Stel de laatste vier waarden in = Bereik ("D4:D7")

7. Nu komt de simpele truc. We willen de voortschrijdende gemiddelde tabel bijwerken. U kunt dit bereiken door de laatste vier waarden te vervangen door de eerste vier waarden van de tabel en de nieuwe voorraadwaarde op de eerste positie te plaatsen.

laatste vier waarden. Waarde = eerste vier waarden. Waarde
Bereik ("D3"). Waarde = nieuwe waarde

8. Vergeet niet het if-statement af te sluiten.

Stop als

9. Voer ten slotte de formule = GEMIDDELDE (D3: D7) in cel D8 in.

10. Test het programma door op de opdrachtknop te klikken.

U zal helpen de ontwikkeling van de site, het delen van de pagina met je vrienden

wave wave wave wave wave