Μια μακροεντολή Excel για να προσδιορίσετε εάν ένα βιβλίο εργασίας είναι ανοιχτό

Καθώς σκέφτεστε να ανοίξετε αυτόματα βιβλία εργασίας του Excel, σκεφτείτε τι μπορεί να συμβεί εάν επιχειρήσετε να ανοίξετε ένα βιβλίο που είναι ήδη ανοιχτό. Στον κόσμο που δεν είναι VBA, το Excel επιχειρεί να ανοίξει ξανά το αρχείο, με το μήνυμα να εμφανίζεται προειδοποιώντας ότι τυχόν μη αποθηκευμένες αλλαγές θα χαθούν. Μπορείτε να προστατεύσετε από ένα τέτοιο περιστατικό ελέγχοντας εάν ένα δεδομένο αρχείο είναι ήδη ανοιχτό πριν προσπαθήσετε να το ανοίξετε ξανά.

Μια μακροεντολή Excel για να προσδιορίσετε εάν ένα βιβλίο εργασίας είναι ανοιχτό

Αποφύγετε αυτό το προειδοποιητικό μήνυμα.

Πώς λειτουργεί η μακροεντολή

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

Η ουσία αυτού του κώδικα είναι απλή. Δοκιμάζετε ένα δεδομένο όνομα αρχείου για να δείτε εάν μπορεί να αντιστοιχιστεί σε μια μεταβλητή Object. Μόνο ανοιγμένα βιβλία εργασίας μπορούν να αντιστοιχιστούν σε μια μεταβλητή Object. Όταν προσπαθείτε να αντιστοιχίσετε ένα κλειστό βιβλίο εργασίας στη μεταβλητή, παρουσιάζεται ένα σφάλμα.

Εάν μπορεί να εκχωρηθεί το δεδομένο βιβλίο εργασίας, το βιβλίο εργασίας είναι ανοιχτό. εάν παρουσιαστεί σφάλμα, το βιβλίο εργασίας είναι κλειστό.

Συνάρτηση FileIsOpenTest(TargetWorkbook As String) Ως Boolean
'Βήμα 1: Δηλώστε τις μεταβλητές σας
    Dim TestBook As Workbook
«Βήμα 2: Πείτε στο Excel να συνεχίσει σε περίπτωση σφάλματος
    Σφάλμα Συνέχιση Επόμενο
'Βήμα 3: Προσπαθήστε να αντιστοιχίσετε το βιβλίο εργασίας προορισμού στο TestBook
    Ορισμός TestBook = Βιβλίο εργασίας (TargetWorkbook)
'Βήμα 4: Εάν δεν παρουσιάστηκε σφάλμα, το βιβλίο εργασίας είναι ήδη ανοιχτό
    Αν Σφάλμα.Αριθμός = 0 Τότε
    FileIsOpenTest = Αληθές
    Αλλού
    FileIsOpenTest = False
    Τέλος εαν
Λειτουργία τερματισμού

Το πρώτο πράγμα που κάνει η μακροεντολή είναι να δηλώσει μια μεταβλητή String που θα κρατά το όνομα αρχείου που επιλέγει ο χρήστης. Το TestBook είναι το όνομα της μεταβλητής String.

Στο Βήμα 2, λέτε στο Excel ότι ενδέχεται να υπάρχει σφάλμα κατά την εκτέλεση αυτού του κώδικα και, σε περίπτωση σφάλματος, συνεχίζετε τον κώδικα. Χωρίς αυτή τη γραμμή, ο κώδικας θα σταματούσε απλώς όταν παρουσιαστεί ένα σφάλμα. Και πάλι, δοκιμάζετε ένα δεδομένο όνομα αρχείου για να δείτε εάν μπορεί να αντιστοιχιστεί σε μια μεταβλητή Object. Εάν το δεδομένο βιβλίο εργασίας μπορεί να εκχωρηθεί, είναι ανοιχτό. εάν παρουσιαστεί σφάλμα, είναι κλειστό.

Στο Βήμα 3, επιχειρείτε να αντιστοιχίσετε το δεδομένο βιβλίο εργασίας στη μεταβλητή Αντικείμενο TestBook. Το βιβλίο εργασίας που προσπαθείτε να αντιστοιχίσετε είναι μια μεταβλητή String που ονομάζεται TargetWorkbook. Το TargetWorkbook μεταβιβάζεται στη συνάρτηση στις δηλώσεις συναρτήσεων (δείτε την πρώτη γραμμή του κώδικα). Αυτή η δομή εξαλείφει την ανάγκη σκληρής κωδικοποίησης ενός ονόματος βιβλίου εργασίας, επιτρέποντάς σας να το μεταβιβάσετε ως μεταβλητή.

Στο Βήμα 4, απλώς ελέγχετε για να δείτε εάν παρουσιάστηκε σφάλμα. Εάν δεν παρουσιάστηκε σφάλμα, το βιβλίο εργασίας είναι ανοιχτό, επομένως ορίζετε το FileIsOpenTest σε True. Εάν παρουσιάστηκε σφάλμα, το βιβλίο εργασίας δεν είναι ανοιχτό και ορίζετε το FileIsOpenTest σε False.

Και πάλι, αυτή η συνάρτηση μπορεί να χρησιμοποιηθεί για την αξιολόγηση οποιουδήποτε αρχείου μεταβιβάζετε σε αυτήν, μέσω του ορίσματος TargetWorkbook. Αυτή είναι η ομορφιά της τοποθέτησης της μακροεντολής σε μια συνάρτηση.

Η ακόλουθη μακροεντολή δείχνει τον τρόπο υλοποίησης αυτής της συνάρτησης. Εδώ, καλείτε τη νέα συνάρτηση FileIsOpenTest για να βεβαιωθείτε ότι ο χρήστης δεν μπορεί να ανοίξει ένα ήδη ανοιχτό αρχείο:

Sub Macro1()

«Βήμα 1: Ορισμός μεταβλητής συμβολοσειράς

    Dim FName As Variant

    Dim FNFileOnly As String

«Βήμα 2: Η μέθοδος GetOpenFilename ενεργοποιεί το πλαίσιο διαλόγου

    FName = Application.GetOpenFilename( _

            FileFilter:="Βιβλία εργασίας του Excel,*.xl*", _

            Title:="Επιλέξτε ένα βιβλίο εργασίας για άνοιγμα", _

            MultiSelect:=False)

'Βήμα 3: Ανοίξτε το επιλεγμένο αρχείο εάν δεν έχει ήδη ανοίξει

    Αν FName <> False Τότε

    FNFileOnly = StrReverse(Left(StrReverse(FName), _

                 InStr(StrReverse(FName), ") - 1))

Πώς να αποκλείσετε το Microsoft Word από το άνοιγμα αρχείων σε λειτουργία μόνο για ανάγνωση στα Windows

Πώς να αποκλείσετε το Microsoft Word από το άνοιγμα αρχείων σε λειτουργία μόνο για ανάγνωση στα Windows

Πώς να αποκλείσετε το Microsoft Word από το άνοιγμα αρχείων σε λειτουργία μόνο για ανάγνωση στα Windows Το Microsoft Word ανοίγει αρχεία σε λειτουργία μόνο για ανάγνωση, καθιστώντας αδύνατη την επεξεργασία του; Μην ανησυχείτε, οι μέθοδοι είναι παρακάτω

Πώς να διορθώσετε τη λανθασμένη εκτύπωση εγγράφων του Microsoft Word

Πώς να διορθώσετε τη λανθασμένη εκτύπωση εγγράφων του Microsoft Word

Τρόπος διόρθωσης σφαλμάτων κατά την εκτύπωση λανθασμένων εγγράφων του Microsoft Word Τα σφάλματα στην εκτύπωση εγγράφων Word με αλλαγμένες γραμματοσειρές, ακατάστατες παραγράφους, κείμενο που λείπει ή χαμένο περιεχόμενο είναι αρκετά συνηθισμένα. Ωστόσο, μην το κάνετε

Διαγράψτε τα σχέδια με στυλό και επισημάνσεις στις διαφάνειες του PowerPoint σας

Διαγράψτε τα σχέδια με στυλό και επισημάνσεις στις διαφάνειες του PowerPoint σας

Εάν έχετε χρησιμοποιήσει το στυλό ή το highlighter για να σχεδιάσετε στις διαφάνειες του PowerPoint κατά τη διάρκεια μιας παρουσίασης, μπορείτε να αποθηκεύσετε τα σχέδια για την επόμενη παρουσίαση ή να τα σβήσετε, ώστε την επόμενη φορά που θα το δείξετε να ξεκινήσετε με καθαρές διαφάνειες PowerPoint. Ακολουθήστε αυτές τις οδηγίες για να διαγράψετε σχέδια με στυλό και επισημάνσεις: Σβήσιμο γραμμών μία στο […]

Περιεχόμενα της βιβλιοθήκης στυλ στο SharePoint 2010

Περιεχόμενα της βιβλιοθήκης στυλ στο SharePoint 2010

Η βιβλιοθήκη στυλ περιέχει αρχεία CSS, αρχεία επεκτάσιμης γλώσσας φύλλου στυλ (XSL) και εικόνες που χρησιμοποιούνται από προκαθορισμένες κύριες σελίδες, διατάξεις σελίδων και στοιχεία ελέγχου στο SharePoint 2010. Για να εντοπίσετε αρχεία CSS στη βιβλιοθήκη στυλ μιας τοποθεσίας δημοσίευσης: Επιλέξτε Ενέργειες τοποθεσίας→ Προβολή Όλο το περιεχόμενο του ιστότοπου. Εμφανίζεται το περιεχόμενο του ιστότοπου. Η βιβλιοθήκη Style βρίσκεται στο […]

Μορφοποίηση αριθμών σε χιλιάδες και εκατομμύρια σε αναφορές του Excel

Μορφοποίηση αριθμών σε χιλιάδες και εκατομμύρια σε αναφορές του Excel

Μην κατακλύζετε το κοινό σας με τεράστιους αριθμούς. Στο Microsoft Excel, μπορείτε να βελτιώσετε την αναγνωσιμότητα των πινάκων εργαλείων και των αναφορών σας μορφοποιώντας τους αριθμούς σας ώστε να εμφανίζονται σε χιλιάδες ή εκατομμύρια.

Τρόπος κοινής χρήσης και παρακολούθησης τοποθεσιών του SharePoint

Τρόπος κοινής χρήσης και παρακολούθησης τοποθεσιών του SharePoint

Μάθετε πώς να χρησιμοποιείτε τα εργαλεία κοινωνικής δικτύωσης του SharePoints που επιτρέπουν σε άτομα και ομάδες να επικοινωνούν, να συνεργάζονται, να μοιράζονται και να συνδέονται.

Πώς να μετατρέψετε ημερομηνίες σε μορφές Julian στο Excel

Πώς να μετατρέψετε ημερομηνίες σε μορφές Julian στο Excel

Οι ημερομηνίες του Ιουλιανού χρησιμοποιούνται συχνά σε περιβάλλοντα παραγωγής ως χρονική σήμανση και γρήγορη αναφορά για έναν αριθμό παρτίδας. Αυτός ο τύπος κωδικοποίησης ημερομηνίας επιτρέπει στους λιανοπωλητές, τους καταναλωτές και τους αντιπροσώπους υπηρεσιών να προσδιορίσουν πότε κατασκευάστηκε ένα προϊόν και, επομένως, την ηλικία του προϊόντος. Οι ημερομηνίες του Ιουλιανού χρησιμοποιούνται επίσης στον προγραμματισμό, τον στρατό και την αστρονομία. Διαφορετικές […]

Πώς να δημιουργήσετε μια εφαρμογή Web Access

Πώς να δημιουργήσετε μια εφαρμογή Web Access

Μπορείτε να δημιουργήσετε μια εφαρμογή Ιστού στην Access 2016. Τι είναι λοιπόν μια εφαρμογή Ιστού; Λοιπόν, ο Ιστός σημαίνει ότι είναι διαδικτυακός και η εφαρμογή είναι απλώς συντομογραφία της «εφαρμογής». Μια προσαρμοσμένη εφαρμογή Ιστού είναι μια διαδικτυακή εφαρμογή βάσης δεδομένων στην οποία έχει πρόσβαση από το cloud χρησιμοποιώντας ένα πρόγραμμα περιήγησης. Δημιουργείτε και συντηρείτε την εφαρμογή Ιστού στην έκδοση για υπολογιστές […]

Γραμμή γρήγορης εκκίνησης στο SharePoint 2010

Γραμμή γρήγορης εκκίνησης στο SharePoint 2010

Οι περισσότερες σελίδες στο SharePoint 2010 εμφανίζουν μια λίστα με συνδέσμους πλοήγησης στη γραμμή γρήγορης εκκίνησης στην αριστερή πλευρά της σελίδας. Η γραμμή γρήγορης εκκίνησης εμφανίζει συνδέσμους προς επιλεγμένο περιεχόμενο ιστότοπου, όπως λίστες, βιβλιοθήκες, τοποθεσίες και σελίδες δημοσίευσης. Η γραμμή γρήγορης εκκίνησης περιλαμβάνει δύο πολύ σημαντικούς συνδέσμους: Σύνδεσμος όλου του περιεχομένου του ιστότοπου: Η […]

Τι σημαίνουν τα μηνύματα σφάλματος επίλυσης στο Excel;

Τι σημαίνουν τα μηνύματα σφάλματος επίλυσης στο Excel;

Για απλά προβλήματα, ο Επίλυση στο Excel συνήθως βρίσκει γρήγορα τις βέλτιστες τιμές μεταβλητής Επίλυσης για τη συνάρτηση αντικειμένου. Ωστόσο, σε ορισμένες περιπτώσεις, ο Επίλυση δυσκολεύεται να βρει τις τιμές της μεταβλητής Επίλυσης που βελτιστοποιούν τη συνάρτηση στόχου. Σε αυτές τις περιπτώσεις, ο Επίλυση εμφανίζει συνήθως ένα μήνυμα ή ένα μήνυμα σφάλματος που περιγράφει ή συζητά το πρόβλημα που […]