Slīdošais vidējais rādītājs programmā Excel VBA - vienkārši Excel makro

Satura rādītājs

Zemāk mēs apskatīsim programmu Excel VBA kas rada a ritošā vidējā tabula. Ievietojiet komandas pogu savā darblapā un pievienojiet šādu koda rindiņu:

Diapazons ("B3"). Vērtība = WorksheetFunction.RandBetween (0, 100)

Šī koda līnija šūnā B3 ievada nejaušu skaitli no 0 līdz 100. Mēs vēlamies, lai Excel VBA ņemtu jauno krājumu vērtību un novietotu to slīdošā vidējā tabulas pirmajā pozīcijā. Visām pārējām vērtībām vajadzētu pārvietoties vienu vietu uz leju, un pēdējā vērtība ir jāsvītro.

Izveidojiet darblapas maiņas notikumu. Darblapas maiņas notikumam pievienoto kodu izpildīs Excel VBA, mainot darblapas šūnu.

1. Atveriet Visual Basic redaktoru.

2. Veiciet dubultklikšķi uz Sheet1 (Sheet1) Project Explorer.

3. Kreisajā nolaižamajā sarakstā izvēlieties Darblapa. Labajā nolaižamajā sarakstā izvēlieties Mainīt.

Darblapas maiņas notikumam pievienojiet šādas koda rindiņas:

4. Deklarējiet mainīgo, ko sauc par Newvalue, kura tips ir vesels skaitlis, un divus diapazonus (pirmās un pēdējās četras vērtības).

Dim newvalue kā vesels skaitlis, pirmās četras vērtības kā diapazons, pēdējās četras vērtības kā diapazons

5. Darblapas maiņas notikums uzklausa visas 1. lapas izmaiņas. Mēs vēlamies, lai Excel VBA kaut ko darītu, ja kaut kas mainās šūnā B3. Lai to panāktu, pievienojiet šādu koda rindu:

Ja Target.Address = "$ B $ 3" ​​Tad

6. Mēs inicializējam jauno vērtību ar šūnas B3 vērtību, pirmās četras vērtības ar diapazonu ("D3: D6") un pēdējās četras vērtības ar diapazonu ("D4: D7").

newvalue = Diapazons ("B3"). Vērtība
Iestatīt pirmās četras vērtības = diapazons ("D3: D6")
Iestatīt pēdējās četras vērtības = diapazons ("D4: D7")

7. Tagad nāk vienkāršs triks. Mēs vēlamies atjaunināt slīdošo vidējo tabulu. To var panākt, aizstājot pēdējās četras vērtības ar pirmajām četrām tabulas vērtībām un ievietojot jauno krājumu vērtību pirmajā pozīcijā.

lastfourvalues.Value = firstfourvalues.Value
Diapazons ("D3"). Vērtība = jauna vērtība

8. Neaizmirstiet aizvērt paziņojumu if.

Beigt, ja

9. Visbeidzot šūnā D8 ievadiet formulu = AVERAGE (D3: D7).

10. Pārbaudiet programmu, noklikšķinot uz komandas pogas.

Jums palīdzēs attīstību vietā, daloties lapu ar draugiem

wave wave wave wave wave