Ushbu mashq veb-saytdan ma'lumotlarni qanday o'qishni ko'rsatadi, bu holda Yahoo.com dan eng so'nggi valyuta kurslari.
O'quvchi dasturchi tasmasi ko'rsatilgan va VBA muharriri bilan tanish deb taxmin qilinadi. Agar yo'q bo'lsa, Google "Excel Developer Tab" yoki "Excel Code Window".
Talab qilinadigan shartlar qatoriga kombo qutilarini to'ldirish va nomlarni belgilash bo'yicha bilimlar kiradi.
Ish kitobi ikkita varaqdan iborat:
Foydalanuvchi interfeysi:
Sotib olish va sotish kombinatsiyasi quyidagi mahalliy ma'lumotlar varag'iga ishora qiladi.
D11-dagi jadval foydalanuvchi formatini saqlab, veb-saytning o'zidan avtomatik ravishda joylashtiriladi.
Ushbu mashq uchun xlsm yuklab olish mumkin Bu yerga.
Ilovani o'zingiz yaratish.
Ikkita kombinatsiyalangan quti bilan varaq yarating. Birlashtirilgan qutilar ikkinchi varaqdagi hujayralarga havola qiladi.
Kombo-boxlar, shuningdek, veb-saytni o'qish uchun kodni chaqiradi o'zgarish voqea.
Valyuta nomlari quyidagi ro'yxatdagi ikkinchi varaqga ("Valyutalar") joylashtirilishi mumkin, tartiblash tartibi shaxsiy imtiyozlar masalasidir:
| zAR |
| USD |
| Yevro |
| GBP |
| CHF |
| AUD |
| NZD |
| JPY |
| SAPR |
| sek |
| DKK |
| NOK |
| mirra |
| HKD |
| SGD |
| ILS |
| AED |
| INR |
| CNY |
Ma'lumotlarni B va E ustunlariga joylashtiring.
Ismlarni aniqlang va rasmga muvofiq Indeks funktsiyalaridan foydalaning:
Nomlar mahalliy "Valyutalar" ma'lumotlar varag'ida aniqlanganligi sababli, "Asosiy" varag'i qiymatni olish uchun faqat belgilangan nomlarga murojaat qilishi kerak, ya'ni mos ravishda E10 va G10 "Asosiy" katakchalar uchun =SOTISH va =XARID OLING.
Internetni o'qish uchun Excelni dasturlashtiramiz. Biroq, u Ma'lumotlar lentasida o'zining o'rnatilgan jarayoniga ega, uning misolini turli stsenariylarni yaratishda makro sifatida yozib olishni xohlashingiz mumkin. Kompyuter yoki brauzer konfiguratsiyasi veb-sahifa skriptlariga salbiy ta'sir ko'rsatishi mumkinligini unutmang.
Kodeks
Modulni joylashtiring va quyidagilarni kiriting:
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
Ish kitobini xlsm turi sifatida saqlang.
Kodni birlashtirilgan maydonlarning qiymatlarini o'zgartirib, sinab ko'ring, so'ngra qo'yilgan jadval formatlarini (to'rtta kasr, panjara, soyalar) moslashtiring.
Excel fayllarining buzilishi
Excel vaqti-vaqti bilan saqlash vaqtida fayllarni buzadi, keyin esa o'z-o'zini tiklashga harakat qiladi, bu ko'pincha, mening tajribamga ko'ra, ishlamaydi. Bu foydalanuvchi uchun halokatli bo'lishi mumkin, chunki u manba fayli (ehtimol sizning yagona nusxangiz) yo'q qilingan. Zararlangan Excel fayllari Biroq, uchinchi tomon vositalari yordamida ta'mirlanishi mumkin, bu esa sezilarli vaqt va kuchni tejaydi.
Muallif kirish:
Feliks Xuker ma'lumotlarni qayta tiklash bo'yicha mutaxassis DataNumenMa'lumotlarni qayta tiklash texnologiyalari bo'yicha jahon yetakchisi bo'lgan , Inc ta'mirlash rar Arxiv va sql-ni tiklash dasturiy mahsulotlar. Qo'shimcha ma'lumot olish uchun tashrif buyuring www.datanumen.com
