Όταν πραγματικά σταματήσετε να το σκεφτείτε, ένα πρόγραμμα περιήγησης στο Internet στην απλούστερη μορφή του δεν είναι πραγματικά τόσο εντυπωσιακή μια εφαρμογή. Θέλω να πω, ναι, το Internet είναι καταπληκτικό από τα πρότυπα κανενός. Η έννοια της σύνδεσης τόσο πολλών υπολογιστών και κινητών συσκευών στον κόσμο σε αυτό το μαζικό δίκτυο, που είναι επική. Αλλά η έννοια της μεταφοράς ενός αρχείου κειμένου με ειδικό κώδικα σε αυτό, και η εμφάνιση αυτού του μεταφερόμενου κειμένου στην οθόνη του υπολογιστή - αυτό δεν είναι πραγματικά μια μεγάλη υπόθεση.
Στην πραγματικότητα, χάρη στις ενσωματωμένες αναφορές σε εφαρμογές που χρησιμοποιούν VBA, μπορείτε να εισάγετε και να εξάγετε ιστοσελίδες μέσω των δικών σας εφαρμογών. Αν έχετε παρακολουθήσει τα προηγούμενα άρθρα σεναρίων, τότε ξέρετε ότι αγαπάμε το VB script και το VBA, όπως το άρθρο μου για τη μεγιστοποίηση των παραθύρων. 3 τρόποι για να ανοίξετε τις εφαρμογές και τα Windows μεγιστοποιημένα με τη δέσμη ενεργειών VB [Windows] 3 τρόποι για να ανοίξετε τις εφαρμογές και τα Windows μεγιστοποιημένα με VB Script [Windows] Αν υπάρχει ένα πράγμα που μου αρέσει να κάνω, είναι να γράψω scripts VB. Είτε πρόκειται για ένα αρχείο Windows Script είτε για ένα σενάριο VBA μέσα σε μια εφαρμογή, το scripting παρέχει τη δυνατότητα να προσθέσετε λειτουργικότητα σε εφαρμογές ... Διαβάστε περισσότερα, Paul σχετικά με αυτο-ενημέρωση χάρτες Πώς να δημιουργήσετε αυτο-επικαιροποίηση διαγράμματα Excel σε τρία εύκολα βήματα Πώς να δημιουργήσετε Αυτόματη ενημέρωση των διαγραμμάτων Excel σε τρία εύκολα βήματα Θα σας δείξουμε πώς μπορείτε να κάνετε την αυτο-ενημέρωση των διαγραμμάτων του Excel. Απλά προσθέστε νέα δεδομένα και παρακολουθήστε πώς εμφανίζονται αυτόματα στο γράφημά σας. Είναι γρήγορο και εύκολο. Διαβάστε περισσότερα και στείλτε μαζικά μηνύματα ηλεκτρονικού ταχυδρομείου του Saikat Πώς να στείλετε εξατομικευμένα μηνύματα ηλεκτρονικού ταχυδρομείου μαζικής ενημέρωσης στο Outlook με συγχώνευση αλληλογραφίας Πώς να στείλετε εξατομικευμένα μηνύματα ηλεκτρονικού ταχυδρομείου μαζικής ενημέρωσης στο Outlook με συγχώνευση αλληλογραφίας Διαβάστε περισσότερα.
Χρησιμοποιώντας την προσέγγιση που ακολουθεί, μπορείτε να χρησιμοποιήσετε το Word, Access ή Excel για να διαβάσετε τα έγγραφα HTML στον ιστό, να αλλάξετε τα έγγραφα αυτά και να εξάγετε ό, τι θέλετε σε ένα νέο παράθυρο του προγράμματος περιήγησης.
Μπορεί να ακούγεται σαν κάτι που μπορεί να κάνει μόνο ένας έμπειρος προγραμματιστής VBA, αλλά σε αυτό το άρθρο θα σας δείξω πώς μπορείτε να το κάνετε εσείς, ξεκινώντας με μια βασική διαδικασία για την εξαγωγή δεδομένων από την δική σας εφαρμογή σε μια ιστοσελίδα.
Ενεργοποίηση του Microsoft Internet Controls
Το πρώτο βήμα, ανεξάρτητα από το πώς θέλετε να χρησιμοποιήσετε τη δυνατότητα εισαγωγής / εξόδου της δικής σας HTML μέσω VBA, είναι να ενεργοποιήσετε την αναφορά Microsoft Internet Controls.
Στο Excel, κάνετε αυτό κάνοντας κλικ στο στοιχείο του μενού " Προγραμματιστής ", κάνοντας κλικ στη σχεδίαση και κάνοντας κλικ στο κουμπί " Προβολή κώδικα ". Αυτό μπορεί να φαίνεται διαφορετικό σε παλαιότερες εκδόσεις του Excel, αλλά ουσιαστικά πρέπει να βρείτε πού μπορείτε να ξεκινήσετε τον επεξεργαστή κώδικα VBA.
Στο πρόγραμμα επεξεργασίας VBA, κάντε κλικ στο Εργαλεία και, στη συνέχεια, στις Αναφορές .
Στο παράθυρο "Αναφορές", μετακινηθείτε μέχρι να δείτε " Microsoft Internet Controls ". Επιλέξτε το πλαίσιο και, στη συνέχεια, κάντε κλικ στο κουμπί " OK ".
Τώρα, μέσα στον κώδικα VBA, θα μπορείτε να δημιουργήσετε αντικείμενα που μπορούν να αποκτήσουν πληροφορίες από το Internet και μπορείτε να εξάγετε τα δικά σας έγγραφα HTML που ο χρήστης μπορεί να δει στο δικό του πρόγραμμα περιήγησης.
Εισαγωγή και εξαγωγή HTML
Το πρώτο πράγμα που θα θέλετε να ολοκληρώσετε εδώ είναι η εξαγωγή πληροφοριών σε HTML. Σκεφτείτε πόσο μπορείτε να κάνετε αφού μπορέσετε να εξάγετε πληροφορίες σε μια ιστοσελίδα με τέλεια μορφοποιημένη HTML. Μπορείτε να εξαγάγετε δεδομένα από τα υπολογιστικά φύλλα του Excel και να τα εξάγετε σε μια όμορφα διαμορφωμένη αναφορά.
Για να δημιουργήσετε αυτήν τη λειτουργία, θα χρειαστεί να εισαγάγετε ένα κουμπί εντολών στο φύλλο σας. Στο μενού Προγραμματιστής, κάντε κλικ στη λειτουργία Σχεδίαση και, στη συνέχεια, κάντε κλικ στο κουμπί " Εισαγωγή ". Θα δείτε ένα αναπτυσσόμενο μενού ελέγχου που μπορείτε να προσθέσετε στο φύλλο σας.
Σε αυτήν την περίπτωση, κάντε κλικ στο κουμπί ελέγχου και τοποθετήστε το στο φύλλο σας. Βεβαιωθείτε ότι υπάρχουν κάποια δεδομένα στο φύλλο (ή σε οποιοδήποτε φύλλο), το οποίο θέλετε να εξάγετε σε μια αναφορά όταν πατήσετε το κουμπί. Κάντε αριστερό κλικ στο κουμπί για να το επιλέξετε και κάντε κλικ στην επιλογή " Προβολή κώδικα ".
Καταχωρίστε τον ακόλουθο κώδικα:
Sub Button1_Click ()
Διασκέδαση ως αντικείμενο
Dim HTML ως συμβολοσειρά
'---------- Ο κώδικας HTML πηγαίνει από εδώ και κάτω ----------
HTML = "Σελίδα αναφοράς HTML" & _
"" & _
" Τα ακόλουθα είναι τα αποτελέσματα από τον καθημερινό υπολογισμό σας " & _
""& _
"Καθημερινή Παραγωγή:" & Φύλλο1.Cells (1, 1) & ""& _
"Καθημερινά Άχρηστα:" & Sheet1.Cells (1, 2) & ""
'---------- Ο ΚΩΔΙΚΟΣ HTML ΑΚΟΛΟΥΘΕΙ ΕΔΩ ΚΑΙ ΠΕΡΙΣΣΟΤΕΡΑ ---------
Στο σφάλμα GoTo error_handler
Ορίστε το objIE = CreateObject ("InternetExplorer.Application")
Με την αναγγελία
.Navigate "για: κενό"
Παίρνετε Ενώ .Busy: DoEvents: Loop
Κάντε Ενώ .ReadyState 4: DoEvents: Loop
.Visible = True
.Document.Write HTML
Τέλος με
Set objIE = Τίποτα
Έξοδος Sub
error_handler:
MsgBox ("Μη αναμενόμενο σφάλμα, κλείνω.")
objIE.Quit
Set objIE = Τίποτα
End Sub
Αυτός ο κώδικας εξάγει την HTML που έχετε ορίσει σε αυτή την έξοδο. Όπως μπορείτε να δείτε από το παραπάνω παράδειγμα μου, μπορείτε να ενσωματώσετε δεδομένα από οποιοδήποτε φύλλο στο Excel στη συμβολοσειρά HTML. Ακολουθεί η αναφορά της ιστοσελίδας που προκύπτει:
Τώρα που έχετε εργασία εξόδου HTML, το επόμενο βήμα για να κάνετε τη δική σας δέσμη ενεργειών VBA ουσιαστικά σαν ένα πρόγραμμα περιήγησης ιστού είναι να διαβάζετε σε HTML από κάποια ιστοσελίδα, να χειρίζεστε τα δεδομένα και στη συνέχεια να τα εξάγετε σε μια σελίδα εξόδου HTML.
Sub Button1_Click ()
Διασκέδαση ως αντικείμενο
Dim HTML ως συμβολοσειρά
Στο σφάλμα GoTo error_handler
Ορίστε το objIE = CreateObject ("InternetExplorer.Application")
Με την αναγγελία
.Navigate "http://www.google.com"
Παίρνετε Ενώ .Busy: DoEvents: Loop
Κάντε Ενώ .ReadyState 4: DoEvents: Loop
.Visible = True
HTML = objIE.Document.Body.innerHTML
.Document.Write "Τα δικά μου αποτελέσματα Google!Αυτή είναι μια τροποποιημένη έκδοση της σελίδας Google!
"& HTML &" "
Τέλος με
Set objIE = Τίποτα
Έξοδος Sub
error_handler:
MsgBox ("Μη αναμενόμενο σφάλμα, κλείνω.")
objIE.Quit
Set objIE = Τίποτα
End Sub
Αυτό που έχω κάνει εδώ χρησιμοποιείται το αντικείμενο IE για να διαβάζει HTML από το Google σε μεταβλητή κειμένου σε VBA που ονομάζεται HTML. Στη συνέχεια, έβαλα το δικό μου κείμενο εξόδου HTML στο επάνω μέρος της σελίδας και έπειτα βγήκε η ίδια HTML στην έξοδο VBA HTML. Αυτό είναι αυτό που μοιάζει με:
Αυτό είναι ένα πολύ βασικό παράδειγμα αυτού που είναι ικανό. Αλλά αν το σκεφτείτε, αφού έχετε το HTML από μια ιστοσελίδα που έχει φορτωθεί στη μεταβλητή συμβολοσειράς VBA, μπορείτε να αναζητήσετε συγκεκριμένες γραμμές στη σελίδα, να αναζητήσετε εικόνες, να αναζητήσετε διευθύνσεις ηλεκτρονικού ταχυδρομείου σε αριθμούς τηλεφώνου - ή να ξαναγράψετε ολόκληρη εισαγωγή σελίδας σε μια νέα, επεξεργασμένη έκδοση της ίδιας σελίδας σε οποιαδήποτε μορφή θέλετε και με οποιεσδήποτε τροποποιήσεις θέλετε.
Κάνοντας αυτό θα χρειαζόταν ένα κομμάτι ανδρείκελου χειραγώγησης συμβολοσειρών - αλλά τίποτα δεν είναι αδύνατο αφού έχετε διαβάσει στην πηγή HTML από τον ιστό.
Βλέπετε κάποια πιθανότητα να χρησιμοποιήσετε είτε την είσοδο HTML είτε την έξοδο στις δικές σας εφαρμογές; Μπορείτε να σκεφτείτε τυχόν δροσερές χρήσεις για αυτό το σενάριο; Μοιραστείτε τις σκέψεις σας στην παρακάτω ενότητα σχολίων.
Πιστοποίηση εικόνας: Shutterstock