Note: The other languages of the website are Google-translated. Back to English

Bagaimana cara cepat mengekstrak nama file dari jalur lengkap di Excel?

Misalkan Anda memiliki lembar kerja yang berisi daftar jalur file, sekarang Anda hanya ingin mengekstrak nama file (bagian kanan dari garis miring terbalik terakhir) dari setiap jalur seperti yang ditunjukkan tangkapan layar berikut. Apakah ada trik cepat untuk menangani tugas ini?

Ekstrak nama file dari jalur lengkap dengan rumus di Excel
Ekstrak nama file dari jalur lengkap dengan User Defined Function
Ekstrak nama file dari jalur lengkap dengan kode VBA


Ekstrak nama file dari jalur lengkap dengan rumus di Excel

Di Excel, Anda dapat menggunakan rumus di bawah ini untuk dengan cepat mengekstrak hanya nama file dari jalur lengkap.

Pilih sel kosong, masukkan rumus di bawah ini ke dalamnya, lalu tekan Enter kunci.

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

Tips: A1 adalah sel yang ingin Anda ekstrak nama filenya), dan tekan tombol Enter, lalu seret gagang isian untuk mengisi rentang yang Anda inginkan. Setelah itu, nama file diekstraksi dari setiap sel.

doc ekstrak name1


Ekstrak nama file dari jalur lengkap dengan User Defined Function

Dengan User Defined Function berikut, Anda bisa mendapatkan nama file dengan mudah dan cepat.

1. Tahan ALT + F11 kunci untuk membuka Jendela Microsoft Visual Basic for Applications.

2. Klik Menyisipkan > Modul, dan tempel kode berikut di Jendela Modul.

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. Tekan lain + Q kunci untuk menutup Microsoft Visual Basic untuk Aplikasi jendela dan kembali ke lembar kerja. Di sel kosong, B1 misalnya, masukkan rumus di bawah ini ke dalamnya dan tekan Enter kunci.

=FunctionGetFileName(A1)

doc-ekstrak-namafile1

Kemudian pilih sel B1 lagi, seret gagang isian ke kisaran yang Anda inginkan untuk menerapkan rumus ini, dan semua nama file telah diekstraksi dari jalur lengkap sebagai hasil berikut:

doc-ekstrak-namafile1


Ekstrak nama file dari jalur lengkap dengan kode VBA

Selain Fungsi yang Ditentukan Pengguna, kode VBA juga dapat membantu Anda mengekstrak nama file. Harap lakukan seperti ini:

1. Tahan ALT + F11 kunci untuk membuka Jendela Microsoft Visual Basic untuk Aplikasi.

2. Klik Menyisipkan > Modul, dan tempel kode berikut di Module Window.

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. Lalu tekan F5 kunci untuk menjalankan kode ini, dan pilih rentang yang ingin Anda ekstrak nama file dari, lihat tangkapan layar:

doc-ekstrak-namafile1

4. Dan kemudian klik OK, nama file telah diekstraksi dari pilihan sebagai berikut:

Note: Dengan kode VBA ini, data asli akan dihancurkan, jadi Anda harus menyalinnya sebelum menerapkan kode ini.


Alat Produktivitas Kantor Terbaik

Kutools for Excel Memecahkan Sebagian Besar Masalah Anda, dan Meningkatkan Produktivitas Anda hingga 80%

  • Reuse: Masukkan dengan cepat rumus, bagan yang kompleks dan apa pun yang pernah Anda gunakan sebelumnya; Enkripsi Sel dengan kata sandi; Buat Milis dan mengirim email ...
  • Bilah Formula Super (dengan mudah mengedit beberapa baris teks dan rumus); Membaca Tata Letak (membaca dan mengedit sel dalam jumlah besar dengan mudah); Tempel ke Rentang yang Difilter...
  • Gabungkan Sel / Baris / Kolom tanpa kehilangan Data; Pisahkan Konten Sel; Gabungkan Baris / Kolom Duplikat... Mencegah Sel Duplikat; Bandingkan Rentang...
  • Pilih Duplikat atau Unik Baris; Pilih Baris Kosong (semua sel kosong); Temukan Super dan Temukan Fuzzy di Banyak Buku Kerja; Pilih Acak ...
  • Salinan Tepat Beberapa Sel tanpa mengubah referensi rumus; Buat Referensi Otomatis ke Beberapa Lembar; Sisipkan Poin, Kotak Centang, dan lainnya ...
  • Ekstrak Teks, Tambahkan Teks, Hapus berdasarkan Posisi, Hapus Space; Membuat dan Mencetak Subtotal Paging; Konversi Konten Antar Sel dan Komentar...
  • Filter Super (simpan dan terapkan skema filter ke sheet lain); Penyortiran Lanjutan menurut bulan / minggu / hari, frekuensi dan lainnya; Filter Khusus dengan huruf tebal, miring ...
  • Gabungkan Workbooks dan WorkSheets; Gabungkan Tabel berdasarkan kolom kunci; Pisahkan Data menjadi Beberapa Lembar; Konversi Batch xls, xlsx dan PDF...
  • Lebih dari 300 fitur canggih. Mendukung Office / Excel 2007-2021 dan 365. Mendukung semua bahasa. Penerapan yang mudah di perusahaan atau organisasi Anda. Fitur lengkap Uji coba gratis 30 hari. Jaminan uang kembali 60 hari.
tab kte 201905

Tab Office Membawa antarmuka Tab ke Office, dan Membuat Pekerjaan Anda Jauh Lebih Mudah

  • Aktifkan pengeditan dan pembacaan tab di Word, Excel, PowerPoint, Publisher, Access, Visio, dan Project.
  • Buka dan buat banyak dokumen di tab baru di jendela yang sama, bukan di jendela baru.
  • Meningkatkan produktivitas Anda sebesar 50%, dan mengurangi ratusan klik mouse untuk Anda setiap hari!
officetab bawah
Urutkan komentar berdasarkan
komentar (2)
Belum ada peringkat. Jadilah yang pertama memberi peringkat!
Komentar ini diminimalkan oleh moderator di situs
Rumus memunculkan #VALUE! kesalahan jika sel sumber hanya memiliki nama file untuk memulai.. Menyematkan seluruh rumus dalam fungsi IFERROR memecahkan masalah ini, misalnya =IFERROR( ,A1)
Komentar ini diminimalkan oleh moderator di situs
Fungsi yang sangat berguna. Apakah ada cara untuk memodifikasi skrip sehingga menemukan nama file jika path memiliki \ atau / garis miring?

Saya memiliki spreadsheet dengan berbagai hyperlink di mana jalur yang mendasarinya adalah \ atau / (back slash atau forward slash) terpisah - saya pikir itu karena beberapa tautan ke file dilakukan sama seperti bookmark di Word awalnya, atau ke file di internal server dok. Atau mungkin karena beberapa tautan jalur dibuat dengan tautan jalur absolut vs relatif?

misalnya:

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


Ketika saya menjalankan fungsi getfilename, ia mendapatkan semua nama file yang berada di jalur dengan \ antara direktori atau folder, tetapi tautan dengan / garis miring dikembalikan apa adanya.
Saya mengubah & menambahkan fungsi kedua yang serupa tetapi mengganti "\" pada baris 4 dengan "/" dan menyebutnya forwardslashgetfilename dan menjalankannya di kolom terpisah setelah saya menjalankan fungsi pertama.

Menjalankan satu demi satu fungsi tidaklah sulit, tetapi saya ingin tahu apakah Anda dapat memperluas kode dalam operasi splitList di baris 4 untuk menyertakan "\" atau "/". Saya bukan programmer VBA tetapi saya mencoba splitList = VBA.Split(FullPath, "\" atau "/") dan tidak berhasil.

Pikiran? Saya berasumsi ini beberapa sintaks sederhana - Saya tidak mengerti pada saat ini ... tapi saya akan mulai mencari-cari di sekitar jalinan ...

Terima kasih!
Belum ada komentar yang diposting di sini
Tinggalkan komentar anda
Posting sebagai Tamu
×
Beri peringkat pos ini:
0   Karakter
Lokasi yang Disarankan

Ikuti kami

Hak Cipta © 2009 - www.extendoffice.com. | Seluruh hak cipta. Dipersembahkan oleh ExtendOffice. | Peta Situs
Microsoft dan logo Office adalah merek dagang atau merek dagang terdaftar dari Microsoft Corporation di Amerika Serikat dan / atau negara lain.
Dilindungi oleh Sectigo SSL