Πώς να διαβάσετε δεδομένα από διαδικτυακές σελίδες με το Excel VBA

Κοινή χρήση τώρα:

Αυτή η άσκηση δείχνει πώς να διαβάζετε δεδομένα από έναν ιστότοπο, σε αυτήν την περίπτωση ενημερωμένες συναλλαγματικές ισοτιμίες από το Yahoo.com.

Υποτίθεται ότι ο αναγνώστης εμφανίζει την κορδέλα προγραμματιστή και είναι εξοικειωμένος με τον επεξεργαστή VBA. Εάν όχι, παρακαλώ "Google Tab Developer Excel" ή "Excel Code Window".

Τα προαπαιτούμενα περιλαμβάνουν τη γνώση της συμπλήρωσης σύνθετων κουτιών και τον ορισμό ονομάτων.

Το βιβλίο εργασίας αποτελείται από δύο φύλλα:

Η διεπαφή χρήστη:Η διεπαφή χρήστη

Τα σύνθετα πλαίσια Αγορά και Πώληση αναφέρονται στο τοπικό φύλλο δεδομένων παρακάτω.

Ο πίνακας στο D11 θα επικολληθεί αυτόματα από τον ίδιο τον ιστότοπο, διατηρώντας τη μορφοποίηση του χρήστη.Αγορά και πώληση νομισμάτων

Μπορείτε να κατεβάσετε το xlsm για αυτήν την άσκηση εδώ.

Δημιουργώντας τον εαυτό σας την εφαρμογή.

Δημιουργήστε ένα φύλλο με δύο σύνθετα κουτιά. Τα σύνθετα πλαίσια θα αναφέρουν κελιά σε ένα δεύτερο φύλλο.

Τα σύνθετα πλαίσια θα επικαλεστούν επίσης τον κωδικό για να διαβάσουν τον ιστότοπο, χρησιμοποιώντας το Αλλαγή συμβάν.

Τα ονόματα νομισμάτων μπορούν να επικολληθούν στο δεύτερο φύλλο ("Νομίσματα") από την παρακάτω λίστα, με τη σειρά ταξινόμησης να είναι προσωπική προτίμηση:

ZAR
USD
EUR
GBP
CHF
AUD
NZD
JPY
CAD
SEK
DKK
ΝΟΚ
MUR
HKD
SGD
ILS
AED
INR
CNY

Επικολλήστε τα δεδομένα στις στήλες B και E.

Ορίστε ονόματα και χρησιμοποιήστε τις λειτουργίες ευρετηρίου σύμφωνα με την εικόνα:Αγορά και πώληση νομισμάτων

Δεδομένου ότι τα ονόματα έχουν οριστεί στο τοπικό φύλλο δεδομένων "Νομίσματα", το φύλλο "Κύριο" πρέπει απλώς να αναφέρεται στα καθορισμένα ονόματα για να πάρει την τιμή, δηλαδή = ΠΩΛΗΣΗ και = ΑΓΟΡΑ για "Κύρια" κελιά 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 Ωστόσο, μπορεί να επιδιορθωθεί χρησιμοποιώντας εργαλεία τρίτων, εξοικονομώντας πολύ χρόνο και προσπάθεια.

Εισαγωγή συγγραφέα:

Ο Felix Hooker είναι ειδικός στην ανάκτηση δεδομένων DataNumen, Inc., η οποία είναι ο παγκόσμιος ηγέτης στις τεχνολογίες ανάκτησης δεδομένων, συμπεριλαμβανομένων επισκευή rar αρχείο και sql προϊόντα λογισμικού ανάκτησης. Για περισσότερες πληροφορίες επισκεφθείτε www.datanumen.com

Κοινή χρήση τώρα:

Τα σχόλια είναι κλειστά.