300 Esimerkkejä

Laskut ja kolikot

Bills Coins

Alla tarkastelemme ohjelmaa Excel VBA joka jakaa summan rahaa seteleitä ja kolikoita .





Tilanne:

Excel-kaava kahden luvun välisen prosentuaalisen eron laskemiseksi

Laskut ja kolikot Excel VBA: ssa





Luo laskentataulukon muutostapahtuma. Laskentataulukon muutostapahtumaan lisätyn koodin suorittaa Excel VBA, kun muutat laskentataulukon solua.

1. Avaa Visual Basic Editor .



2. Kaksoisnapsauta Sheet1 (Sheet1) Project Explorerissa.

3. Valitse Laskentataulukko vasemmasta avattavasta luettelosta. Valitse oikeasta avattavasta luettelosta Muuta.

Laskentataulukon muutostapahtuma Excel VBA: ssa

miten pyöristetään lähimpään 5: een Excelissä

Lisää seuraavat koodirivit laskentataulukon muutostapahtumaan:

4. Ilmoita muuttuja nimeltä määrä Double ja muuttuja i, kokonaistyyppi.

Ei mitäänmääräKuten Kaksinkertainen, iKuten Kokonaisluku

5. Laskentataulukon muutostapahtuma kuuntelee kaikkia Sheet1: n muutoksia. Haluamme, että Excel VBA tekee jotain vain, jos jotain muuttuu solussa B2. Tämän saavuttamiseksi lisää seuraava koodirivi:

JosTarget.Address = '$ B $ 2'Sitten

6. Alustamme muuttuvan määrän solun B2 arvolla.

määrä = alue ('B2'). Arvo

7. Tyhjennämme alueen taajuuksilla.

Alue ('B5: B16'). Arvo = ''

8. Nyt on aika jakaa syötetty rahasumma. Aloitamme For For Next -silmukan.

Varteni = 5Vastaanottaja16

9. Hyödynnämme Tee Silmukalla rakenne. Näiden sanojen väliin asetettu koodi toistetaan niin kauan kuin Do While -kohdan jälkeinen osa on totta. Haluamme, että Excel VBA toistaa koodirivit vaiheessa 10 niin kauan kuin määrä on suurempi tai yhtä suuri kuin Solut (i, 1).

Tehdä Sillä aikaamäärä> = Solut (i, 1). Arvo

Silmukka

10. Lisää seuraavat koodirivit Do While Loop -sarjaan.

Solut (i, 2) Arvo = Solut (i, 2) Arvo + 1
määrä = määrä - Solut (i, 1). Arvo

Selitys: niin kauan kuin määrä on suurempi tai yhtä suuri kuin Solut (i, 1). Arvo, summa sisältää tämän arvon seteleitä/kolikoita. Tämän seurauksena Excel VBA lisää tämän setelin/kolikon taajuutta (ensimmäinen rivi) ja vähentää setelin/kolikon arvon summasta (toinen rivi). Tämä prosessi toistetaan, kunnes määrä on pienempi kuin solut (i, 1). Seuraavaksi Excel VBA lisää i: tä ja siirtyy seuraavaan laskuun/kolikkoon nähdäkseen, kuinka monta kertaa tämä seteli/kolikko mahtuu jäljellä olevaan summaan. Tällä tavalla rahat jaetaan seteleiksi ja kolikoiksi, kunnes rahat jakautuvat.

11. Sulje For For Next -silmukka ja muista sulkea if -lause (molemmat Do Do Loop -silmukan ulkopuolella).

Seuraavai
Loppu jos

12. Testaa ohjelma.

excel-sarakkeen kirjain-numero-muunnin

Tulos:

Laskujen ja kolikoiden tulos

Huomaa: syötetty summa ei tietenkään välttämättä sisällä kaikkia laskuja/kolikoita. Jos summa ei sisällä tiettyä seteliä/kolikkoa, Do While -kohdan jälkeinen osa ei koskaan toteudu tälle setelille/kolikolle ja Excel VBA siirtyy suoraan seuraavaan laskuun/kolikkoon.

5/6 valmis! Lue lisää tapahtumista>
Siirry seuraavaan lukuun: Array



^