როგორ წავიკითხოთ მონაცემები ონლაინ ვებ გვერდებიდან Excel VBA-ით

გააზიარე ახლა:

ეს სავარჯიშო გვიჩვენებს, თუ როგორ უნდა წაიკითხოთ მონაცემები ვებსაიტიდან, ამ შემთხვევაში ვალუტის გაცვლის კურსები Yahoo.com-დან.

ვარაუდობენ, რომ მკითხველს აქვს დეველოპერის ლენტი ნაჩვენები და იცნობს VBA რედაქტორს. თუ არა, გთხოვთ Google „Excel Developer Tab“ ან „Excel Code Window“.

წინაპირობები მოიცავს კომბო-ბოქსების შევსების და სახელების განსაზღვრის ცოდნას.

სამუშაო წიგნი შედგება ორი ფურცლისგან:

მომხმარებლის ინტერფეისი:მომხმარებლის ინტერფეისი

ყიდვა-გაყიდვის კომბინირებული ველები მიუთითებს ადგილობრივ მონაცემთა ფურცელზე ქვემოთ.

ცხრილი D11-ზე ავტომატურად იქნება ჩასმული თავად ვებსაიტიდან, შეინარჩუნებს მომხმარებლის ფორმატირებას.იყიდეთ და გაყიდეთ ვალუტები

xlsm ამ სავარჯიშოსთვის შეგიძლიათ ჩამოტვირთოთ აქ დაწკაპუნებით.

თავად შექმენით აპლიკაცია.

შექმენით ფურცელი ორი კომბინირებული ყუთით. კომბინირებული ყუთები მიუთითებს უჯრედებზე მეორე ფურცელზე.

კომბინირებული ყუთები ასევე გამოიძახებენ კოდს ვებსაიტის წასაკითხად, გამოყენებით შეცვლა ღონისძიება.

ვალუტების სახელები შეიძლება ჩაიწეროს მეორე ფურცელში („ვალუტები“) ქვემოთ მოცემული სიიდან, დალაგების თანმიმდევრობა პირადი უპირატესობის საკითხია:

ZAR
აშშ დოლარი
ევრო
GBP
CHF
AUD
NZD
JPY
CAD
SEK
DKK
NOK
MUR
HKD
SGD
ILS
AED
INR
CNY

ჩასვით მონაცემები B და E სვეტებში.

განსაზღვრეთ სახელები და გამოიყენეთ ინდექსის ფუნქციები ილუსტრაციის მიხედვით:იყიდეთ და გაყიდეთ ვალუტები

ვინაიდან სახელები განისაზღვრა ადგილობრივ მონაცემთა ფურცელზე „ვალუტა“, ფურცელი „მთავარი“ მხოლოდ განსაზღვრულ სახელებს უნდა მიუთითებდეს მნიშვნელობის მისაღებად, ანუ =SELL და =BUY „მთავარი“ უჯრედებისთვის E10 და G10 შესაბამისად.

ჩვენ დავაპროგრამებთ Excel-ს ვებ წასაკითხად. თუმცა, მას აქვს საკუთარი ჩაშენებული პროცესი მონაცემთა ლენტზე, რომლის მაგალითი შეიძლება გსურდეთ ჩაწეროთ როგორც მაკრო სხვადასხვა სცენარების შესაქმნელად. გაითვალისწინეთ, რომ კომპიუტერის ან ბრაუზერის კონფიგურაციამ შეიძლება უარყოფითად იმოქმედოს ვებ გვერდის სკრიპტებზე.

კოდექსი

ჩადეთ მოდული და შეიყვანეთ შემდეგი:

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

შეინახეთ სამუშაო წიგნი xlsm ტიპის სახით.

შეამოწმეთ კოდი კომბინირებული ველების მნიშვნელობების შეცვლით, შემდეგ კი გააქტიურეთ ჩასმული ცხრილის ფორმატები (ოთხი ათობითი ადგილი, ბადე, ჩრდილები?).

Excel ფაილების კორუფცია

Excel ცნობილია, რომ ზოგჯერ არღვევს ფაილებს შენახვისას, შემდეგ ცდილობს საკუთარი თვითაღდგენის რუტინას, რაც ხშირად, ჩემი გამოცდილებით, უბრალოდ არ მუშაობს. ეს შეიძლება დამღუპველი იყოს მომხმარებლისთვის, რადგან ეს არის წყაროს ფაილი (შესაძლოა თქვენი ერთადერთი ასლი) განადგურებული. დაზიანებული Excel ფაილი თუმცა შეიძლება გარემონტდეს მესამე მხარის ხელსაწყოების გამოყენებით, რაც დაზოგავს მნიშვნელოვან დროსა და ძალისხმევას.

ავტორი შესავალი:

ფელიქს ჰუკერი არის მონაცემთა აღდგენის ექსპერტი DataNumen, Inc., რომელიც მსოფლიო ლიდერია მონაცემთა აღდგენის ტექნოლოგიებში, მათ შორის სარემონტო rar არქივი და sql აღდგენის პროგრამული პროდუქტები. დამატებითი ინფორმაციისთვის ეწვიეთ www.datanumen. ერთად

გააზიარე ახლა:

კომენტარები დახურულია.