作者tropical72 (藍影)
看板C_and_CPP
標題Re: [問題] 開啟一個EXCEL檔並且執行EXCEL的某個巨集
時間Thu Jan 20 23:20:31 2011
※ 引述《Linethan (冷冷的心)》之銘言:
: 請問一下 1那一步是指 每次一打開該excel檔 就會立即自動執行指定的巨集嘛?
: 所以我只需要用C來打開EXCEL檔就可以了 執行巨集的命令是寫在EXCEL裡面 對嘛?
: 可是這樣子會變成 我每一次開檔案都會自動執行巨集嘛?
假設你要處理的資料是 target.xls,你的 vba 巨集是寫在 program.xls,
每次開啟 program.xls 時才對 target.xls 做處理,這樣就不會有你說的問題。
如果你在 target.xls 本身就有寫了一份巨集,不想移植到 program.xls 上,
你可以在 program.xls 寫下另一份巨集,每次開啟 program.xls 時,
開啟 target.xls -> 執行 target.xls 巨集 -> 存檔,關閉 -> 離開
: 但我其實不是希望每次開檔案都要執行巨集 只有在特定的時間需要這麼做而已
: 我的需求其實是 我要指定每天某一個時間 打開檔案 執行巨集 檔案關閉
: 我想到的做法是 寫出一個.exe檔 每次執行該.exe檔
時間一到去執行有二種做法,windows 上有工作排程,(linux 不知道有沒有)
把 program.xls 用工作排程排上去,時間到自動執行。
另一種作法比較不建議,用 C 寫一個程式去 polling / callback 比對時間
到了之後喚醒 program.xls。
: 另外 請問一下bcb是指 Borland C++ Builder??
: 這是我google到的
是的,但 Borland C++ Builder 也不是免費的,
不到最後一線,真的不建議用 C 去做你說的事,
你可以在本版的文章列表底下按 "/" 再按 "excel",
你會發現前人用 C 去處理 excel ,即使程式碼出來後,
還是會有一些相容性、阿里不達的問題。
最後再給良心建議,不到最後一線真的別用 C 去處理;
如果到最後一線,你有選擇用 compiler(IDE) 餘地的話,
與其用 VC,不如用 BCB
(當初用 VC 開發也是出於無奈,合作的公司沒有 BCB 這套)
--
YouLoveMe() ? LetItBe() : LetMeFree();
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 180.177.76.142
→ tropical72:補個說明,你的compiler是dev-c,目前我沒看過別人用它 01/20 23:38
→ tropical72:來控制excel.. 01/20 23:39
※ 編輯: tropical72 來自: 180.177.76.142 (01/20 23:44)
推 Linethan:對耶 我用另外一個excel檔來作開啓執行的動作就好了嘛^^" 01/20 23:50
→ Linethan:真是一語驚醒 我原本一直想到很困難的方向去>< 01/20 23:51
→ tropical72:vba很重觀念,初階學完後你會發現它不適合用c開發.加油. 01/20 23:52
→ Linethan:真是太感謝了 初次造訪C板就有熱心的指導 謝謝各位 01/20 23:53
→ Linethan:我工作一直都是用vba的 只是沒想通怎麼做自動開檔執行XD 01/20 23:55