Σφάλμα VBA 1004 (Top 6 τύποι) | Πώς να επιδιορθώσετε το σφάλμα χρόνου εκτέλεσης 1004 στο VBA;

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

Σφάλμα VBA 1004 στο Excel

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

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

Σε αυτό το άρθρο, θα συζητήσουμε ένα από τα σημαντικά λάθη Excel "Σφάλμα VBA 1004".

Top 6 Σφάλματα χρόνου εκτέλεσης του Excel VBA 1004

Μπορείτε να κατεβάσετε αυτό το πρότυπο σφάλματος VBA 1004 εδώ - Πρότυπο σφάλματος VBA 1004

# 1 - Σφάλμα χρόνου εκτέλεσης VBA 1004: Το όνομα έχει ήδη ληφθεί. Δοκιμάστε ένα διαφορετικό:

Αυτό το σφάλμα παρουσιάζεται κατά τη μετονομασία του φύλλου.

Εάν το όνομα του φύλλου εργασίας υπάρχει ήδη και αν προσπαθήσετε να αντιστοιχίσετε το ίδιο όνομα σε άλλο φύλλο, το VBA ρίχνει το σφάλμα χρόνου εκτέλεσης του 1004 δηλώνοντας «Το όνομα έχει ήδη ληφθεί. Δοκιμάστε διαφορετικό "

Για παράδειγμα, δείτε τον παρακάτω κώδικα.

Κώδικας:

 Sub Error1004_Example () Φύλλα εργασίας ("Sheet2"). Name = "Sheet1" End Sub 

Προσπαθώ να μετονομάσω το φύλλο 2 ως φύλλο 1. Αλλά έχω ήδη ένα φύλλο με το όνομα "Φύλλο1".

Εάν εκτελέσω αυτόν τον κωδικό χρησιμοποιώντας το πλήκτρο F5 ή χειροκίνητα, θα λάβω το σφάλμα χρόνου εκτέλεσης 1004: Αυτό το όνομα έχει ήδη ληφθεί. Δοκιμάστε ένα διαφορετικό

Επομένως, δοκιμάστε να μετονομάσετε ανάλογα το φύλλο.

# 2 - Σφάλμα χρόνου εκτέλεσης VBA 1004: Η μέθοδος "Range" του αντικειμένου "_ Global" απέτυχε:

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

Για αυτό, έχω ονομάσει το εύρος των κελιών ως «Επικεφαλίδες» όπως φαίνεται στην παρακάτω εικόνα.

Τώρα χρησιμοποιώντας το αντικείμενο Range, έχω πρόσβαση σε αυτό το εύρος.

Κώδικας:

 Sub Error1004_Example () Range ("Headings"). Επιλέξτε End Sub 

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

Αλλά αν αναφέρω λανθασμένα την ονομαστική περιοχή, θα λάβω το σφάλμα χρόνου εκτέλεσης 1004: Η μέθοδος "Range" του αντικειμένου "_ Global" απέτυχε

Κώδικας:

 Sub Error1004_Example () Range ("Headngs"). Επιλέξτε End Sub 

Εκτελέστε αυτόν τον κωδικό χειροκίνητα ή χρησιμοποιώντας το πλήκτρο F5 και δείτε το αποτέλεσμα.

# 3 - Σφάλμα χρόνου εκτέλεσης VBA 1004: Η μέθοδος της κατηγορίας εύρους απέτυχε:

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

Για παράδειγμα δείτε τον παρακάτω κώδικα.

Κώδικας:

 Sub Error1004_Example () Φύλλα εργασίας ("Sheet1"). Range ("A1: A5"). Επιλέξτε End Sub 

Ο παραπάνω κωδικός λέει ότι επιλέγει τα κελιά A1 έως A5 στο φύλλο εργασίας "Sheet1". Για να πειραματιστώ το παρόν ενεργό φύλλο μου είναι "Sheet2", όχι "Sheet1".

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

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

# 4 - Η μέθοδος VBA Runtime Error 1004 άνοιξε αντικειμένων βιβλίων εργασίας απέτυχε:

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

Για παράδειγμα δείτε τον παρακάτω κώδικα.

Κώδικας:

 Sub Error1004_Example () Dim wb As Workbook Set wb = Workbooks.Open ("\\ FileName.xls", ReadOnly: = True, CorruptLoad: = xlExtractData) End Sub 

Αυτό θα ρίξει το παρακάτω σφάλμα.

# 5 - Μέθοδος σφάλματος χρόνου εκτέλεσης VBA 1004 Λυπούμαστε που δεν μπορούσαμε να βρούμε:

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

Τώρα ρίξτε μια ματιά στον παρακάτω κώδικα.

Κώδικας:

 Sub Error1004_Example () Βιβλία εργασίας. Ανοίξτε το Όνομα αρχείου: = "E: \ Excel Files \ Infographics \ ABC.xlsx" End Sub 

Αυτός ο κωδικός λέει ότι ανοίγει το αρχείο "ABC.xlsx" στην αναφερόμενη διαδρομή φακέλου.

Σίγουρα ξέρω ότι δεν υπάρχει αρχείο στη διαδρομή φακέλου που αναφέρεται. Όταν δεν υπάρχει αρχείο στον αναφερόμενο φάκελο, θα λάβουμε τη μέθοδο Runtime Error 1004 Συγγνώμη Δεν μπορέσαμε να βρούμε.

# 6 - Σφάλμα χρόνου εκτέλεσης VBA 1004 Η κλάση εύρους μεθόδου ενεργοποίησης απέτυχε:

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

Για παράδειγμα δείτε τον παρακάτω κώδικα.

Κώδικας:

 Sub Error1004_Example () Φύλλα εργασίας ("Sheet1"). Range ("A1: A5"). Ενεργοποίηση End Sub 

Αυτό το σφάλμα είναι πολύ παρόμοιο με αυτό που είδαμε στο σφάλμα χρόνου εκτέλεσης 1004: Η μέθοδος επιλογής της κατηγορίας εύρους απέτυχε.

Αν τρέξω χειροκίνητα ή χρησιμοποιώντας το πλήκτρο F5 τότε θα έχουμε κάτω από το σφάλμα.

Διότι χωρίς ενεργοποίηση του φύλλου δεν μπορούμε να ενεργοποιήσουμε τα κελιά σε αυτό. Ενεργοποιήστε πρώτα το φύλλο και μετά ενεργοποιήστε τα κελιά αυτού του φύλλου.