這里有一個很玄幻的問題,懇請大家幫我看看~
在我自己的Tool開發機(Win7)上,能正常Copy data到excel檔案去,用try catch不會有任何例外。
但是在其他機器上,當我在Copy data時,try catch就會彈出發生意外,Cannot open clipboard,此類提示。代碼如下:
TClipboard *Clipboard;
Clipboard = new TClipboard();
Clipboard->AsText = Data;
delete Clipboard;
WorkSheet.OlePropertyGet("Cell", iRow, iCol).OleProcedure("Select");
WorkSheet.OleProcedure("Paste");
麻煩大家幫我看看,這段程式是包含在try里頭的,謝謝~~
uj5u.com熱心網友回復:
沒看到你Copy data的代碼,而且delete Clipboard是不是太早了。uj5u.com熱心網友回復:
Clipboard的AsText就是添加了Data的部分,Delete這個我也覺得有點早,但是貌似并不影響操作,我想是系統已經把這部分做完了所以可以直接delete吧,之后就是操作excel直接Paste,麻煩您看一下這么操作是否ok?或許有沒有其他copy的建議,可以不使用Paste?
感謝~
uj5u.com熱心網友回復:
我沒這樣用過,我記得有個CopyToClipboard的類方法。uj5u.com熱心網友回復:
試試把delete陳述句挪到paste陳述句之后。uj5u.com熱心網友回復:
你好,這個我試過了,并沒有影響,現象依舊是一樣,開發機照常沒事,其他機器則會發生error!
uj5u.com熱心網友回復:
Clipboard是個全域的東西,可靠性不高,誰都可以讀寫,你可以把代碼改成資料插入Excel表格,不用粘貼的方式。uj5u.com熱心網友回復:
求指教!怎么個插入法呢,之前是因為clipboard可以直接就剪切比較方便,請問除了這個方法還有其他示例嗎。
其實我在試用的時候覺得可靠性…確實有點不大好,求指教
uj5u.com熱心網友回復:
ole讀寫Excel,或者第三方控制元件讀寫Excel。前者的話,我收藏了原來妖哥網站的幾篇網頁。現在很多人都用后者。uj5u.com熱心網友回復:
ole方式讀寫,機器上必須安裝有Excel。用第三方控制元件貌似可以不需要。uj5u.com熱心網友回復:
本來就是要操作Excel,可是本地機器上卻可以不安裝Excel,這怎么理解?
用OLE操作Excel很可以做很多事,也不需要額外安裝什么輔助,算是個不錯的解決方案。
uj5u.com熱心網友回復:
本來用的就是OLE方式呀。。都是用Paste或者Copy,就是比較納悶,為什么我的環境不一樣會導致出error,還是沒找到根本的原因,你提出的只是規避嘛我知道,這個真的挺玄幻
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/17547.html
上一篇:pat乙級
