2015-10-19 106 views
0

我建立了一個iOS應用程序以使用戶的投入,然後上傳自己的數據爲.csv文件到Dropbox的。如何觀看Excel文件變化,同時openpyxl進行更改

現在,我想要構建一個跨平臺的桌面應用程序,它使用openpyxl和Python Dropbox API來監聽這些.csv上傳,然後將這些.csv文件中的數據寫入各種.xlsx工作簿。除此之外,我沒有任何問題,除非我的客戶希望能夠隨着Excel工作簿的變化而在他們的桌面上觀看。

每當我就與openpyxl的分配,如...

WB = load_workbook( 「sample.xlsx」)#load現有.xlsx文件

WS = wb.active#獲取活躍工作表

WS [「A1」] = 12個#assign數據單元格A1

...然後運行該腳本將成功地更改文件,但我已經關閉,然後打開該文件以查看更改,而不是在發生變化時觀察變化。

所以,我的問題是,我怎麼看openpyxl的變化脫穎而出,因爲它們發生的工作簿發生,是有一個跨平臺的解決方案呢?接受這個問題的其他方法,我感謝!

我對這個問題的研究已經跨越了幾個小時,我都拿出最好的是的AppleScript和pywin32的某種混合體,但可能得到真正的醜陋/越野車真正快!

我非常感謝幫助!

+0

什麼會觀察這些變化實際上樣子 - 它希望看到的細胞更新中,當用戶有xls文件在桌面上打開實時?這將是非常複雜的,除非打開xls文件的人不能自己編輯它(甚至不是非常簡單的...)。例如,你會如何處理用戶所做的任何傳入的新數據之間的衝突? –

+0

感謝您的輸入!原來查理對xlwings的回答正是我所需要的! – MarkieMoose

回答

0

我不認爲你可以很容易地做到這一點。 Excel文件本身就是簡單的zip壓縮文件,這使得監控變得非常困難,因爲你無法修改zip文件:你總是創建一個新的壓縮文件。這正是Excel使用文件鎖定的原因。

這聽起來我像你需要一些那種的Excel本身可以監視並集成外部數據源。你可能想看看xlwings進行就地編輯。或者,也可以使用openpyxl來創建外部數據源。它將與外部文件一起使用。

+0

非常有幫助! xlwings是我需要的! – MarkieMoose

相關問題