Bu məşq vebsaytdan məlumatların necə oxunacağını göstərir, bu halda Yahoo.com-dan ən son valyuta məzənnələri.
Oxucunun Tərtibatçı lentinin nümayiş etdirildiyi və VBA Redaktoru ilə tanış olduğu güman edilir. Əgər belə deyilsə, lütfən Google “Excel Developer Tab” və ya “Excel Code Window”.
İlkin şərtlərə kombo qutuların doldurulması və adların müəyyən edilməsi haqqında biliklər daxildir.
İş dəftəri iki vərəqdən ibarətdir:
İstifadəçi interfeysi:
Almaq və satmaq kombin qutuları aşağıdakı yerli məlumat cədvəlinə istinad edir.
D11-dəki cədvəl istifadəçi formatını saxlayaraq vebsaytın özündən avtomatik yapışdırılacaq.
Bu məşq üçün xlsm endirilə bilər burada.
Tətbiqi özünüz qurun.
İki birləşmə qutusu olan bir vərəq yaradın. Kombo qutular ikinci vərəqdəki xanalara istinad edəcək.
Kombinə qutular həmçinin veb-saytı oxumaq üçün kodu işə salacaq Dəyişdirmək hadisə.
Valyuta adları aşağıdakı siyahıdan ikinci vərəqə (“Valyutalar”) yapışdırıla bilər, çeşidləmə qaydası şəxsi seçim məsələsidir:
| ZAR |
| ABŞ dolları |
| Avro |
| GBP |
| CHF |
| AUD |
| NZD |
| JPY |
| CAD |
| SEK |
| DKK |
| NOK |
| MUR |
| HKD |
| SGD |
| ILS |
| AED |
| INR |
| CNY |
Məlumatları B və E sütunlarına yapışdırın.
Adları müəyyənləşdirin və təsvirə uyğun olaraq İndeks funksiyalarından istifadə edin:
Adlar “Valyutalar” yerli məlumat vərəqində müəyyən edildiyi üçün “Əsas” vərəqi sadəcə olaraq dəyəri əldə etmək üçün müəyyən edilmiş adlara istinad etməlidir, yəni “Əsas” E10 və G10 xanaları üçün müvafiq olaraq = SAT və = AL.
İnterneti oxumaq üçün Excel proqramlaşdıracağıq. Bununla belə, onun Data lentində öz daxili prosesi var, bunun bir nümunəsini müxtəlif ssenarilərin qurulmasında makro kimi qeyd etmək istəyə bilərsiniz. Nəzərə alın ki, kompüter və ya brauzer konfiqurasiyaları veb-səhifə skriptlərinə mənfi təsir göstərə bilər.
Kod
Modul daxil edin və aşağıdakıları daxil edin:
Option Explicit
Sub Ticker()
Dim currBuy As String
Dim currSell As String
Range("D11:F14").ClearContents 'prepare the ground for the web data
currBuy = Range("BUY") 'get variable values from Defined Names previously set up
currSell = Range("SELL")
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;http://finance.yahoo.com/q?s=" & currBuy & currSell & "=X", Destination:=Range("$D$11"))
.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
End sub
Sub DropDown2_Change() 'This event will call the routine above. Object name might differ.
Call Ticker
End Sub
Sub DropDown1_Change()
Call Ticker
End Sub
İş kitabını xlsm növü olaraq saxlayın.
Kombo qutuların dəyərlərini dəyişdirərək kodu sınayın, sonra yapışdırılmış cədvəlin formatlarını zərifləşdirin (dörd onluq yer, tor xətləri, kölgələr?).
Excel fayllarının pozulması
Excel vaxtaşırı yaddaşda saxlama zamanı faylları korlayır, sonra özünü bərpa etməyə cəhd edir, bu da mənim təcrübəmə görə tez-tez işləmir. Bu, istifadəçi üçün fəlakətli ola bilər, çünki məhv edilən mənbə fayldır (bəlkə də sizin yeganə nüsxəniz). Zədələnmiş Excel faylları lakin üçüncü tərəf alətləri ilə təmir edilə bilər, bu da xeyli vaxt və səyə qənaət edir.
Müəllif Giriş:
Feliks Hooker məlumatların bərpası üzrə mütəxəssisdir DataNumendaxil olmaqla məlumatların bərpası texnologiyaları üzrə dünya lideri olan , Inc təmir rar arxiv və sql bərpa proqram məhsulları. Ətraflı məlumat üçün ziyarət edin www.datanumen.com
