Tento článek ukazuje, jak v pravidelných intervalech obnovovat list nebo graf. Toto cvičení vytváří časovač, který obnovuje list každou minutu, což odráží změny ve zdrojových datech.
Tento článek předpokládá, že čtenář má zobrazený pás karet pro vývojáře a je obeznámen s editorem VBA. Pokud ne, prosím Google „Excel Developer tab“ nebo „Excel Code Window“.
Příklad sešitu použitého v tomto cvičení najdete zde.
Použití dynamických přehledů může být:
- Čtení majetkutarDatabáze dodávaná s telefonním systémem vaší společnosti pro analýzu hovorů.
- Generujte náhodné číslo každých 15 minut pro účely výher nebo tomboly.
- Automaticky odesílat e-maily z místní databáze, když jsou splněny určité úrovně. (zde časovač rozhodne na základě dosažených úrovní, zda bude proces spuštěn nebo ne).
nebo ten, který použijeme:
- Zobrazte nejnovější směnný kurz USD / EUR z internetu.
Data jsou extrahována z Web Yahoo Finance každou minutu. Po úspěšném testování by měl být nahrazen delší interval zpracování.
Rozhraní
Otevřete nový sešit;
Pojmenujte první list „Zobrazit“. Protože tabulka D8 až E11 bude vyplněna z webu, není nutné zadávat hodnoty ani nadpisy řádků. Zbytek je volitelný.
Kodex
Otevřete okno kódu VBA a vložte modul. Zkopírujte níže uvedený kód do modulu.
Událost Auto_Open starts Timer při otevření sešitu a zastavení při zavření worbooku, pokud vývojář během vývoje kód nepřeruší.
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
Výsledek
Každých n minut bude tabulka v listu „Zobrazení“ aktualizována z webu Yahoo. Složitější datová připojení najdete na webu společnosti Microsoft.
Obnovení poškozených sešitů
Je známo, že Excel selhal v neočekávaných okamžicích, pravděpodobně souvisejících s tehdy nedostatkem zdrojů. V takových případech může být zdrojový soubor irevocabpoškozené a odmítněte je znovu otevřít. Při absenci častého zálohování je nástroj k obnovení poškozený Excel soubory by byly neocenitelné.
Úvod autora:
Felix Hooker je odborník na obnovu dat v oboru DataNumen, Inc., která je světovým lídrem v oblasti technologií pro obnovu dat, včetně rar opravit a SQL softwarové produkty pro obnovu. Pro více informací navštivte www.datanumen.com

