Kolme esimerkkiä informoida käyttäjää miten ohjelma edistyy.
Kahdessa ensimmäisessä käytän tilariviä (StatusBar) ja kolmannessa käytän valintaikkunaa.
Koodi lukee soluja ja kertoo kuinka ohjelma edistyy.
Tilarivillä voit esittää esim. laskurilla tai tekstillä missä mennään.
Application.StausBar = ”Teksti tai luku jota näytetään”
Tilarivin tyhjennät seuraavalla tavalla:
Application.StausBar = ””
Mikäli et tyhjennä tilariviä jää merkintä siihen kunnes tilariviä päivitetään uudelleen tai kun Excel käynnistetään uudestaan.
Esimerkki 1
Tilarivillä kerrotaan laskurilla i, monesko solu menossa.
Sub NaytaEdistyminen() Dim i As Long 'laskuri Dim s As Range 'solu jota käsitellään Range(Selection, Selection.End(xlDown)).Select i = 1 For Each s In Selection Application.StatusBar = i 'tilarivi kertoo laskurin avulla monennetta solua luetaan i = i + 1 'Laita oma koodisi tähän Next Application.StatusBar = "" 'tilarivi tyhjennetään End Sub
Esimerkki 2
Tilarivillä kerrotaan kuinka monta prosenttia on käsitelty.
Muuttuja i kertoo mitä rivi käsitellään ja muuttuja j kuinka monta riviä on alueessa. Kuinka monta prosenttia on luettu saadaan kaavalla i/j muotoiltuna prosentiksi.
Sub NaytaEdistyminen2() Dim i As Long 'laskuri Dim j As Long 'muuttuja joka sisältää alueen kokonaisrivimäärän Dim s As Range Range(Selection, Selection.End(xlDown)).Select j = Selection.Rows.Count 'lasketaan alueen rivit i = 1 For Each s In Selection 'lasketaan prosenteissa kuinka paljon tehty Application.StatusBar = Format(i / j, "0.00%") i = i + 1 'Laita oma koodisi tähän Next Application.StatusBar = "" 'tilarivi tyhjennetään End Sub
Esimerkki 3
Käytetään lomaketta jossa kerrotaan missä mennään. Se voidaan asettaa keskelle näyttöä jolloin se varmasti huomataan.
Koodi on kuten esimerkissä kaksi paisti että edistymisen näyttämiseksi käytetään lomaketta.
Lokmake on Form joka on määritelty ei modaaliseksi (ShowModal = False). Lomakkeen nimeksi on annettu FrmEdistyminen.
Lisäksi lomakkeelle on määritelty kaksi Label –objeltia, yksi johon laitettu teksti ”Luetteu” ja toinen joka on nimetty lblNayta ja jota ohjelma päivittää.
Objektien fonttikokoa on myös laitettu isommaksi.
Sub NaytaEdistyminen3() Dim i As Long Dim j As Long Dim s As Range Range(Selection, Selection.End(xlDown)).Select j = Selection.Rows.Count i = 1 FrmEdistyminen.Show 'tuodaan lomake näyttöön For Each s In Selection 'lomakkeen objektia (lblNayta) päivitetään FrmEdistyminen.lblNayta.Caption = Format(i / j, "0.00%") i = i + 1 Next Unload FrmEdistyminen 'suljetaan lomake ja poistetaan muistista End Sub
Lomakkeen asetukset kuvana