看板 Visual_Basic 關於我們 聯絡資訊
公司用 Java + Oracel PL/SQL 開發了很多 Web 程式給同仁用,但是在 資料輸出的部分,其實做得不太好,不是用 Oracle Discover 3.1,就是 寫 Web 的報表程式,跑出資料到 Excel 裡面後,很多地方需要再加工, 才能呈報給長官看。 為了解決報表端的問題,我和公司資訊部門的某個同事 ( 我自己不是公 司資訊部門的 ),一起在 Excel 的 VBA 環境中,開發了一套規模很大的 VBA 程式,首先它讓 user 在 Excel VBA 的 forms 中輸入一堆參數 (大 概是六組 ),然後按下一個按鈕後,VBA 程式會呼叫 Windows API,把 Oracle Discover 3.1 打開,然後打開一堆 discover files (全部有十 幾個),然後把參數丟進去跑報表,在報表輸出到 Excel 裡面,變成十 幾個 Excel 檔以後,VBA code 會把這十幾個檔案,合併到一個檔案裡 面 ( 變成一個檔案裡面,有十幾個工作表 ),然後對每個工作表,根據 公司財務部、管理部、資訊部等一堆部門同事的要求,用 VBA code 自動 整理成他們想要的格式 ( 畫各種粗細不一的格線,塗上不同顏色,合併 欄位,設定欄寬、字型、列印格式 ... 族繁不及備載 )。 因為這個 VBA 程式,是給海外子孫公司跑的 ( 大概有三四十家子孫公 司,我們公司是很大的上市公司 ),為了解決各地 PC 端環境不一的問 題,所以這支 VBA 程式,是放在台北的 PC Server 端 ( 好像是裝 Windows NT 2003 ),讓海外各辦用 Windows 的 remote desktop 機制 連回來跑這支程式。現在問題來了,管 PC Server 端的 IT 同事,認為 這個系統 (給海外子孫公司編年度預算的系統) 已經上線, 報表端應該 用傳統的 Web 報表輸出程式,或者用 Web Discover / Crystal Report 才對,不應該再用 VBA code + Windows Remote Desktop 機制跑,但報 表的使用單位,包括台北管理、財務、IT ... 等單位,又認為最後要看 的報表還是 Excel 型態的,用這種方式處理,可以做到最【客製化】, 做出最漂亮的 Excel 報表。 所以我的問題是,用 Java ( JSP、JSF ? ) + Oracle PL SQL 開發的網 路程式,是否可以直接啟動已經寫好的 VBA code,然後把產生的報表叫 回來 ? 或者說,放在網路上給有權限的人使用 ? Web Discover 或者 Oracle Crystal Report 等 BI 工具,能在 Excel 的環境中,做到 Excel VBA 可以做到的,一切和調整格式有關的工作嗎 ? 或者更進一步問, 一般的報表使用者,有可能放棄 Excel 型態的報表嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.35.152.173
Marty:在Excel中的 WorkBook_Open 裡面呼叫VBA Code 11/02 08:23
Marty:這樣只要用外部程式Open Excel 就會自動完成所有的計算 11/02 08:25
Bedlem:如果要傳遞數值進去怎麼辦? 11/02 22:52
Marty:先把參數都寫到Excel Sheet儲存格中 再Open一次 11/03 21:24
Catbert:把參數都丟到一個table,再去table抓參數 11/03 23:03
Bedlem:Java 可以丟參數到 Excel 裡面嗎? 11/03 23:24
Catbert:用Java把參數丟到Oracle的一個Table中, 11/04 07:35
Catbert:Excel再用ADO去Oracle Table抓參數回來跑報表 11/04 07:36