Όνομα βιβλίου εργασίας VBA (Λήψη, ρύθμιση, χωρίς επέκταση)

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

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

Λήψη ονόματος βιβλίου εργασίας

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

12345 Sub GetWorkbookName ()Dim strWBName As StringstrWBName = ActiveWorkbook.NameMsgBox strWBNameΤέλος υπο

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

Για να περιηγηθείτε σε όλα τα ενεργά βιβλία εργασίας και να επιστρέψετε τα ονόματα των βιβλίων εργασίας στο Excel, μπορούμε να εκτελέσουμε τον ακόλουθο κώδικα:

1234567 Sub GetWorkbookNames ()Dim wb Ως βιβλίο εργασίαςΓια κάθε wb Σε βιβλία εργασίαςActiveCell = wb.NameActiveCell.Offset (1, 0). ΕπιλέξτεΕπόμενοΤέλος υπο

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

Λήψη ονόματος βιβλίου εργασίας χωρίς επέκταση

Μπορούμε να χρησιμοποιήσουμε τις λειτουργίες ΑΡΙΣΤΕΡΑ και INSTR για να αφαιρέσουμε τυχόν χαρακτήρες μετά την περίοδο στο όνομα αρχείου:

12345 Sub GetWorkbookName ()Dim strWBName As StringstrWBName = Αριστερά (ActiveWorkbook.Name, InStr (ActiveWorkbook.Name, ".") - 1)MsgBox strWBNameΤέλος υπο

Μπορούμε να χρησιμοποιήσουμε τις συναρτήσεις LEFT και LEN για να αφαιρέσουμε 5 χαρακτήρες από το τέλος του ονόματος αρχείου:

12345 Sub GetWorkbookName ()Dim strWBName As StringstrWBName = Αριστερά (ActiveWorkbook.Name, Len (ActiveWorkbook.Name) - 55)MsgBox strWBNameΤέλος υπο

Ρύθμιση του ονόματος του βιβλίου εργασίας

Για να ορίσετε το όνομα ενός βιβλίου εργασίας στο VBA, εξακολουθούμε να χρησιμοποιούμε την ιδιότητα Name του βιβλίου εργασίας, ωστόσο δεν μπορούμε να χρησιμοποιήσουμε αυτήν τη μέθοδο για να αλλάξουμε το όνομα του Active Workbook. Αυτό οφείλεται στο γεγονός ότι το ενεργό βιβλίο εργασίας είναι ανοιχτό και θα εμφανιστεί σφάλμα πρόσβασης σε αρχείο. Για να ξεπεραστεί αυτό, μπορούμε να αποθηκεύσουμε το αρχείο με νέο όνομα και στη συνέχεια να διαγράψουμε το παλιό αρχείο.

12345678910 Public Sub SetWorkbookName ()Dim strPath As StringDim strNewName As StringDim strOldName As StringstrOldName = ActiveWorkbook.NamestrNewName = InputBox ("Εισαγάγετε νέο όνομα για το βιβλίο εργασίας")strPath = ActiveWorkbook.PathActiveWorkbook.SaveAs strPath & "/" & strNewNameKill strPath & "/" & strOldNameΤέλος υπο

Για να μετονομάσουμε ένα βιβλίο εργασίας που δεν είναι ανοιχτό, μπορούμε να χρησιμοποιήσουμε τη μέθοδο Name.

123 Public Sub RenameWorkbook ()Όνομα "C: \ Data \ MyFile.xlsx" As "C: \ Data \ MyNewFile.xlsx"Τέλος υπο

Θα βοηθήσει στην ανάπτυξη του τόπου, μοιράζονται τη σελίδα με τους φίλους σας

wave wave wave wave wave