ADAM
Lv 4
ADAM 發問時間: 電腦與網際網路程式設計 · 2 個月前

★在Excel2010的任一工作表的任一格,皆能計算顯示這工作簿名稱的公式★謝謝?

★在Excel2010的任一工作表的任一格,皆能計算顯示這工作簿名稱的公式★謝謝

已更新項目:

是顯示這"工作簿"名稱的公式,非顯示這"工作表"名稱的公式。

顯示各表名=MID(CELL("filename", A1),FIND("]", CELL("filename", A1)) + 1, 255)

謝謝

2 個已更新項目:

工作簿名称有36字元长度,是显示这"工作簿"名称的公式,非显示这"工作表"名称的公式。謝謝

3 個已更新項目:

謝謝"匿名使用者"的回答如下,結果會包含如xlsx等的"副檔名"或"文件擴展名"。如何修改下式,讓其結果顯示不含如xlsx等的"副檔名""文件擴展名",謝謝

匿名使用者=MID(CELL("filename",A1),FIND("[",CELL("filename",A1),1)+1,(FIND("]",CELL("filename",A1),1)-FIND("[",CELL("filename",A1),1))-1)

4 個已更新項目:

另在其他處取得答案,不顯示"副檔名"或"文件擴展名"的非陣列的一般函數公式。

顯示工作簿名=MID(CELL("filename",A1),FIND("[",CELL("filename",A1))+1,FIND(".xl",CELL("filename",A1))-FIND("[",CELL("filename",A1))-1)

1 個解答

評分
  • 匿名使用者
    2 個月前
    最佳解答

    =MID(

      CELL("filename",A1),

      FIND("[",CELL("filename",A1),1)+1,

      (FIND("]",CELL("filename",A1),1)-FIND("[",CELL("filename",A1),1))-1

    )

    嘗試看看...

    --

    去除副檔名的話公式會比較長

    =MID(

      MID(CELL("filename",A1),FIND("[",CELL("filename",A1),1)+1,(FIND("]",CELL("filename",A1),1)-FIND("[",CELL("filename",A1),1))-1),

      1,

      MAX(IF(MID(MID(CELL("filename",A1),FIND("[",CELL("filename",A1),1)+1,(FIND("]",CELL("filename",A1),1)-FIND("[",CELL("filename",A1),1))-1),ROW($1:$255),1)=".",ROW($1:$255),""))-1

    )

    注意要按CTRL+SHIFT+ENTER完成公式

    這會取出名稱裡最後一個點之前的部分, 名稱若是"Test.xlsx", 結果會取得"Test"

    如果檔名總長超過255個字請把ROW函數中的$255改成你需要的數字

還有問題?馬上發問,尋求解答。