Αυτή η άσκηση δείχνει πώς να διαβάζετε δεδομένα από έναν ιστότοπο, σε αυτήν την περίπτωση ενημερωμένες συναλλαγματικές ισοτιμίες από το 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
