Board logo

標題: [發問] 請教取得當前檔案所在的資料夾名稱,不含路徑? [打印本頁]

作者: starry1314    時間: 2015-9-9 09:48     標題: 請教取得當前檔案所在的資料夾名稱,不含路徑?

A1 =MID(CELL("filename"),1,FIND("[",CELL("filename"))-2)

目前是只取得如 A1 =  D:\目錄\測試資料夾  

希望得到  A1 = 測試資料夾

請各位大大指導了
作者: ML089    時間: 2015-9-9 10:55

=TRIM(LEFT(RIGHT(SUBSTITUTE(CELL("filename"),"\",REPT(" ",99)),198),99))
作者: starry1314    時間: 2015-9-9 14:36

回復 2# ML089

感謝~幫了大忙...這公式真是有看沒有懂
作者: ML089    時間: 2015-9-9 15:17

回復 3# starry1314

=TRIM(LEFT(RIGHT(SUBSTITUTE(CELL("filename"),"\",REPT(" ",99)),198),99))

SUBSTITUTE(CELL("filename"),"\",REPT(" ",99)) 就將 "\"用99個空格取代

例如
CELL("filename") = D:\A\B\C\filename
SUBSTITUTE(CELL("filename"),"\",REPT(" ",9)) ="D:         A         B         C         filename"
當空格用99格時,就可以將 磁碟、目錄...、檔案名稱用空格分隔的更開。

後面就可以用 MID RIGHT LEFT 等函數取出你要的部分
最後用 TRIM 將前後空格清除
作者: starry1314    時間: 2015-9-9 15:23

本帖最後由 starry1314 於 2015-9-9 15:27 編輯

回復 4# ML089


    感謝指導....解說完 真是簡單明瞭....

RIGHT 198 是取出  最右邊 目錄名稱\檔案名稱
再用left 取出左邊第一個位置
trim 後刪除 除所要資料以外的資料
不知理解是否有誤

=TRIM(LEFT(RIGHT(SUBSTITUTE(CELL("filename"),"\",REPT(" ",99)),198),99))
作者: ML089    時間: 2015-9-9 20:11

回復 5# starry1314


沒有錯!
目錄名稱由右至左第二個,所以用RIGHT+LEFT來取。
若是由左至右就用MID來取




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)