See artikkel näitab, kuidas töölehte või diagrammi korrapäraste ajavahemike järel värskendada. See harjutus loob taimeri, mis värskendab töölehte iga minuti järel, kajastades muudatusi lähteandmetes.
See artikkel eeldab, et lugejal on kuvatud arendaja lint ja ta tunneb VBA redaktorit. Kui ei, siis kasutage Google'i „Exceli arendaja vahekaarti” või „Exceli koodi akent”.
Selles harjutuses kasutatud töövihiku näite leiate siin.
Dünaamilise aruandluse kasutusalad võivad olla järgmised:
- Kõnede analüüsimiseks lugege ettevõtte telefonisüsteemiga kaasasolevat andmebaasi.
- Looge iga 15 minuti järel juhuslik arv auhindade või loosimise eesmärgil.
- Kui teatud tasemed on täidetud, saatke kohalikust andmebaasist e-kirjad automaatselt. (siin otsustab taimer saavutatud tasemete põhjal, kas protsess käivitada või mitte).
või see, mida kasutame:
- Kuva uusim USD/EUR vahetuskurss Internetist.
Andmed on välja võetud Yahoo Finance'i veebisait iga minuti järel. Pärast edukat testimist tuleks asendada pikem töötlemisintervall.
Liides
Avage uus töövihik;
Nimetage esimene leht "Ekraan". Kuna tabelid D8 kuni E11 täidetakse veebist, ei pea väärtusi ega reapealkirju sisestama. Ülejäänud on valikuline.
Kood
Avage VBA koodi aken ja sisestage moodul. Kopeerige allolev kood moodulisse.
Sündmus Auto_Open käivitab taimeri töövihiku avamisel ja peatub töövihiku sulgumisel, välja arvatud juhul, kui arendaja katkestab koodi arenduse ajal.
Sub Auto_Open()
AlertTime = Now + TimeValue("00:01:00") 'interval in minutes
Application.OnTime AlertTime, "Ticker" 'call Sub Ticker, below
End Sub
Sub Ticker()
Dim currBuy As String
Dim currSell As String
Range("D8:F11").ClearContents 'prepare the destination for the web data
currBuy = "USD"
currSell = "EUR"
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;http://finance.yahoo.com/q?s=" & currBuy & currSell & "=X", Destination:=Range("$D$8"))
.Name = "q?s=" & currSell & currBuy & "=X"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingNone
.WebTables = """table1"""
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
End With
AlertTime = Now + TimeValue("00:01:00") ‘move trigger on a minute
Application.OnTime AlertTime, "Ticker"
End Sub
Tulemus
Iga n minuti järel värskendatakse Yahoo veebisaidilt tabelit lehel „Kuva”. Keerulisemate andmeühenduste kohta vaadake Microsofti veebisaiti.
Rikutud töövihikute taastamine
Excel on teadaolevalt ootamatutel hetkedel kokku jooksnud, mis on tõenäoliselt seotud ressursside nappusega. Sellistel juhtudel võib lähtefail pöördumatult kahjustuda ja seda ei saa enam avada. Sagedase varundamise puudumisel on taastamistööriist rikutud Excel failid oleksid hindamatu väärtusega.
Autori sissejuhatus:
Felix Hooker on andmete taastamise ekspert DataNumen, Inc., mis on maailmas juhtiv andmete taastamise tehnoloogiate, sealhulgas rar-parandus ja SQL-i taastamise tarkvaratooted. Lisateabe saamiseks külastage www.datanumenCom

