0
爲了動態獲取excel文件中的物理圖像路徑,我必須使用下面的代碼。使excel理解編碼的xml格式
=LEFT(CELL("filename",A1),FIND("*",SUBSTITUTE(CELL("filename",A1),"\","*",LEN(CELL("filename",A1))-LEN(SUBSTITUTE(CELL("filename",A1),"\",""))),1))&"D04523.jpg"
但正如我的Excel文件是基於XML的格式urn:schemas-microsoft-com:office:spreadsheet
,我必須每"
雙引號編碼像下面。
=LEFT(CELL("filename",A1),FIND("*",SUBSTITUTE(CELL("filename",A1),"\","*",LEN(CELL("filename",A1))-LEN(SUBSTITUTE(CELL("filename",A1),"\",""))),1))&"D04523.jpg"
一切都在XML文件是正確的,但問題是excel文件不能解碼"
。
下面是我可以在Excel應用程序中打開的XML文件。
<?xml version="1.0" encoding="utf-8"?>
<?mso-application progid="Excel.Sheet"?>
<ss:Workbook xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet">
<ss:Worksheet ss:Name="Sheet1">
<ss:Table>
<ss:Row>
<ss:Cell>
<ss:Data ss:Type="String">1</ss:Data>
</ss:Cell>
<ss:Cell>
<ss:Data ss:Type="String">2</ss:Data>
</ss:Cell>
</ss:Row>
<ss:Row>
<!-- Error happen : An unexpected error has occured. -->
<ss:Cell
ss:HRef="=LEFT(CELL("filename",A1),FIND("*",SUBSTITUTE(CELL("filename",A1),"\","*",LEN(CELL("filename",A1))-LEN(SUBSTITUTE(CELL("filename",A1),"\",""))),1))&"D04523.jpg"">
<ss:Data ss:Type="String">View Image 1</ss:Data>
</ss:Cell>
<!-- This can view image when user click. But I don't want to use hard coded path.-->
<ss:Cell
ss:HRef="D:\05.Project\ExcelResearch\D04523.jpg">
<ss:Data ss:Type="String">View Image 2</ss:Data>
</ss:Cell>
</ss:Row>
</ss:Table>
</ss:Worksheet>
</ss:Workbook>
所以我的問題
我怎樣才能讓Excel來理解編碼的公式?
或
如何修改xml文件以轉義雙引號"
?
我嘗試使用斜槓,但不起作用。
是否有可能在你的喜好爲Excel編碼沒有被設置爲「UTF-8" ? – AMR