Note: The other languages of the website are Google-translated. Back to English
Σύνδεση  \/ 
x
or
x
Εγγραφή  \/ 
x

or

Πώς να εξαγάγετε γρήγορα το όνομα αρχείου από την πλήρη διαδρομή στο Excel;

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

Εξαγάγετε το όνομα αρχείου από την πλήρη διαδρομή με τον τύπο στο Excel
Εξαγάγετε το όνομα αρχείου από την πλήρη διαδρομή με τη λειτουργία που καθορίζεται από το χρήστη
Εξαγάγετε το όνομα αρχείου από την πλήρη διαδρομή με τον κωδικό VBA


Εξαγάγετε το όνομα αρχείου από την πλήρη διαδρομή με τον τύπο στο Excel

Στο Excel, μπορείτε να χρησιμοποιήσετε τον παρακάτω τύπο για να εξαγάγετε γρήγορα μόνο το όνομα αρχείου από την πλήρη διαδρομή.

Επιλέξτε ένα κενό κελί, εισαγάγετε τον παρακάτω τύπο σε αυτό και μετά πατήστε το εισάγετε κλειδί.

=MID(A1,FIND("*",SUBSTITUTE(A1,"\","*",LEN(A1)-LEN(SUBSTITUTE(A1,"\",""))))+1,LEN(A1))

Συμβουλές: Το A1 είναι το κελί από το οποίο θέλετε να εξαγάγετε το όνομα αρχείου) και πατήστε το πλήκτρο Enter και μετά σύρετε τη λαβή πλήρωσης για να συμπληρώσετε το εύρος που θέλετε. Μετά από αυτό, το όνομα αρχείου εξάγεται από κάθε κελί.

όνομα αποσπάσματος doc1


Εξαγάγετε το όνομα αρχείου από την πλήρη διαδρομή με τη λειτουργία που καθορίζεται από το χρήστη

Με την ακόλουθη λειτουργία που καθορίζεται από το χρήστη, μπορείτε να αποκτήσετε το όνομα αρχείου εύκολα και γρήγορα.

1. Κρατήστε πατημένο το ALT + F11 για να ανοίξετε το Παράθυρο Microsoft Visual Basic for Applications.

2. Κλίκ Κύριο θέμα > Μονάδα μέτρησηςκαι επικολλήστε τον ακόλουθο κώδικα στο Παράθυρο ενότητας.

Function FunctionGetFileName(FullPath As String) As String
'Update 20140210
Dim splitList As Variant
splitList = VBA.Split(FullPath, "\")
FunctionGetFileName = splitList(UBound(splitList, 1))
End Function

3. Πατήστε το κουμπί άλλος + Q πλήκτρα για να κλείσετε το Microsoft Visual Basic για εφαρμογές παράθυρο και επιστρέψτε στο φύλλο εργασίας. Σε ένα κενό κελί, για παράδειγμα, B1, εισαγάγετε τον παρακάτω τύπο και πατήστε το εισάγετε κλειδί.

=FunctionGetFileName(A1)

doc-extract-filenames1

Στη συνέχεια, επιλέξτε ξανά το κελί B1, σύρετε τη λαβή πλήρωσης στο εύρος που θέλετε να εφαρμόσετε αυτόν τον τύπο και όλα τα ονόματα αρχείων έχουν εξαχθεί από τις πλήρεις διαδρομές ως εξής:

doc-extract-filenames1


Εξαγάγετε το όνομα αρχείου από την πλήρη διαδρομή με τον κωδικό VBA

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

1. Κρατήστε πατημένο το ALT + F11 για να ανοίξετε το Παράθυρο Microsoft Visual Basic for Applications.

2. Κλίκ Κύριο θέμα > Μονάδα μέτρησηςκαι επικολλήστε τον ακόλουθο κώδικα στο παράθυρο της ενότητας.

Sub GetFileName()
'Update 20140210
Dim Rng As Range
Dim WorkRng As Range
Dim splitList As Variant
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
For Each Rng In WorkRng
    splitList = VBA.Split(Rng.Value, "\")
    Rng.Value = splitList(UBound(splitList, 1))
Next
End Sub

3. Στη συνέχεια πατήστε F5 για να εκτελέσετε αυτόν τον κώδικα και επιλέξτε το εύρος από το οποίο θέλετε να εξαγάγετε το όνομα αρχείου, δείτε το στιγμιότυπο οθόνης:

doc-extract-filenames1

4. Και στη συνέχεια κάντε κλικ στο κουμπί OK, τα ονόματα αρχείων έχουν εξαχθεί από την επιλογή ως εξής:

Note: Με αυτόν τον κωδικό VBA, τα αρχικά δεδομένα θα καταστραφούν, οπότε θα πρέπει να αντιγράψετε έναν πριν εφαρμόσετε αυτόν τον κωδικό.


Τα καλύτερα εργαλεία παραγωγικότητας του Office

Το Kutools για Excel λύνει τα περισσότερα από τα προβλήματά σας και αυξάνει την παραγωγικότητά σας κατά 80%

  • Επαναχρησιμοποίηση: Εισαγάγετε γρήγορα σύνθετοι τύποι, γραφήματα και οτιδήποτε έχετε χρησιμοποιήσει στο παρελθόν. Κρυπτογράφηση κυττάρων με κωδικό πρόσβασης Δημιουργία λίστας αλληλογραφίας και στείλτε email ...
  • Super Formula Bar (επεξεργαστείτε εύκολα πολλές γραμμές κειμένου και τύπου). Διάταξη ανάγνωσης (εύκολη ανάγνωση και επεξεργασία μεγάλου αριθμού κελιών). Επικόλληση σε φιλτραρισμένο εύρος...
  • Συγχώνευση κελιών / σειρών / στηλών χωρίς απώλεια δεδομένων · Περιεχόμενο διαχωρισμού κελιών Συνδυάστε διπλές σειρές / στήλες... Αποτροπή διπλών κυττάρων; Συγκρίνετε τα εύρη...
  • Επιλέξτε Διπλότυπο ή Μοναδικό Σειρές; Επιλέξτε Κενές σειρές (όλα τα κελιά είναι κενά). Σούπερ εύρεση και ασαφής εύρεση σε πολλά βιβλία εργασίας. Τυχαία επιλογή ...
  • Ακριβές αντίγραφο Πολλαπλά κελιά χωρίς αλλαγή της αναφοράς τύπου. Αυτόματη δημιουργία αναφορών σε πολλαπλά φύλλα? Εισαγωγή κουκκίδων, Πλαίσια ελέγχου και άλλα ...
  • Εξαγωγή κειμένου, Προσθήκη κειμένου, Κατάργηση κατά θέση, Αφαιρέστε το διάστημα; Δημιουργία και εκτύπωση υποσύνολων σελιδοποίησης. Μετατροπή περιεχομένου και σχολίων μεταξύ κελιών...
  • Σούπερ φίλτρο (αποθηκεύστε και εφαρμόστε σχήματα φίλτρων σε άλλα φύλλα). Προηγμένη ταξινόμηση ανά μήνα / εβδομάδα / ημέρα, συχνότητα και άλλα. Ειδικό φίλτρο με έντονη, πλάγια ...
  • Συνδυάστε βιβλία εργασίας και φύλλα εργασίας; Συγχώνευση πινάκων βάσει βασικών στηλών. Διαχωρίστε τα δεδομένα σε πολλά φύλλα; Μαζική μετατροπή xls, xlsx και PDF...
  • Περισσότερα από 300 ισχυρά χαρακτηριστικά. Υποστηρίζει Office / Excel 2007-2019 και 365. Υποστηρίζει όλες τις γλώσσες. Εύκολη ανάπτυξη στην επιχείρηση ή τον οργανισμό σας. Πλήρεις δυνατότητες δωρεάν δοκιμής 30 ημερών. Εγγύηση επιστροφής χρημάτων 60 ημερών.
kte καρτέλα 201905

Το Office Tab φέρνει τη διεπαφή με καρτέλες στο Office και κάνει την εργασία σας πολύ πιο εύκολη

  • Ενεργοποίηση επεξεργασίας και ανάγνωσης καρτελών σε Word, Excel, PowerPoint, Publisher, Access, Visio και Project.
  • Ανοίξτε και δημιουργήστε πολλά έγγραφα σε νέες καρτέλες του ίδιου παραθύρου και όχι σε νέα παράθυρα.
  • Αυξάνει την παραγωγικότητά σας κατά 50% και μειώνει εκατοντάδες κλικ ποντικιού για εσάς κάθε μέρα!
κάτω μέρος γραφείου
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Rese · 1 years ago
    Very useful function. Is there a way to modify the script so it finds the filename if the path has either \ or / slashes?

    I have a spreadsheet with various hyperlinks where the underlying paths are either \ or / (back slash or forward slash) separates - I think its because some of the links to files were done just as bookmarks in Word originally, or to files on an internal doc server. Or maybe its because some path links are made with absolute vs relative path links?

    eg:

    ../../../../Documents/2ndQuarter/2019/standardcost_widget12345.pdf
    or
    \fileserver\factory23\Operations\Parts_Mgt\Documents\2ndQuarter\2019\standardcost_widget12345.pdf


    When I ran the getfilename function, it got all the filenames that were in paths with \ between directories or folders, but the links with / slashes were returned as is.
    I altered & added a second function that was similar but replaced the "\" in line 4 with "/" and called it forwardslashgetfilename and run it in a separate column after I run the first function.

    Running one function after another is not difficult, but I was curious if you can expand the code in splitList operation in line 4 to include both "\" or "/". I'm no VBA programmer but I tried splitList = VBA.Split(FullPath, "\" or "/") and it didn't work.

    Thoughts? I'm assuming its some simple syntax - I'm just clueless at this point... but I will start poking around the interwebs...

    Tks!
  • To post as a guest, your comment is unpublished.
    bob · 3 years ago
    The formula raises a #VALUE! error if the source cell has only a filename to begin with.. Embedding the entire formula in an IFERROR function solves this problem, e.g., =IFERROR(<orig formula>,A1)