2016-11-07 53 views
-2

我有一個excel 2010工作簿。 我想從中提取一個特定的表單(名稱)並將其保存爲csv文件。如何從外部工具訪問Excel 2010工作表?

的主要要求是從外部程序這樣做(編程語言不是關鍵..我可以使用Perl/Python的/ VB,無論工作... ...)

我瀏覽網頁(google一下),但找不到任何文件如何做到這一點。

我確實發現Excel 2010中實際上是一個拉鍊,但尋找到它,我無法找到張的名字....

有沒有人有這樣的任務的經驗嗎?

+0

問題要求我們推薦或找到一本書,工具,軟件庫,教程或其他非本地資源,因爲它們傾向於吸引自以爲是的答案和垃圾郵件,所以不適合堆棧溢出。相反,[描述問題](http://meta.stackoverflow.com/questions/254393)以及迄今爲止已經做了什麼來解決它。 – dgw

+0

@dgw:我defintaly知道堆棧溢出的目的...但是...我想我實際上描述了這個問題...我不能按名稱訪問該表作爲Excel 2010作爲zip,不列出它們...' – NirMH

+0

然後添加你已經試過的問題。現在它看起來像一個給我的代碼問題。添加你的代碼,你已經達到的目標以及你被卡住的地方,然後你會得到答案。否則你的問題很可能會被關閉。 – dgw

回答

1

你用perl標記了問題。所以,你可以使用perl來解決這個問題,只需從CPAN存儲庫安裝一些已經開發的perl模塊即可。檢查http://metacpan.org

這是很容易的任務,以谷歌他們,但如果你無法找到需要的人,這裏有:

  • Spreadsheet::ParseExcel - 讀取用perl Excel文件的基本模塊。你需要熟悉這一點 - 你將學習如何處理工作簿,工作表,單元格等的基本「邏輯」。
  • Spreadsheet::XLSX - 像上面一樣,但可以讀取2007+ XLSX文件類型。 (你的情況)。

使用上述模塊,您將能夠讀取您的XLSX文件。對於第二部分,(保存爲csv) - 再次存在已經開發和良好測試模塊,例如:

  • Text::CSV_XS - 文本:: CSV_XS提供逗號分隔值的組合物和分解的設施。

對於這樣簡單的問題(使用上述模塊),真實世界的perl腳本通常只有幾行(10-15行)。

但是,如果你想處理邊緣情況,例如字符編碼轉換等 - 也許你也需要使用其他幾個模塊。

相關問題