1. 程式人生 > >關於office二次開發的一點思考

關於office二次開發的一點思考

作者:朱金燦

        今天和朋友聊天。他們要做一個類似excel表格的控制元件。我問他為何不採取MS office二次開發的方式。因此我覺得類似excel表格這種支援公式的複雜表格,一時半會是做不好的。我問他是不是因為正版的office成本太高的緣故。他說不是,他們面對國企使用者,國企使用者本身就有正版的office。他說國企老總的思維是這樣的,如果他看到你只是簡單呼叫office的功能,你想他們還願意掏幾十萬上百萬來買你的系統嗎?他們肯定會認定你的系統不夠強大。實際上他們軟體的第一版就是office二次開發的,後來的版本就完全改過來了。

        說實話我比較難理解這種國企老總的思維。現在應用系統的創新主要在業務方面的創新,就是說資訊科技為業務創新服務,而不是倒過來顯示系統多麼強大。事實上業界也有這方面的聲音:孟巖在《

為什麼我們不重視Office開發——與郭安定談話想到的》提到:很多時候我們花了巨大的精力所作的東西,其實只不過是Office現有功能的拙劣複製。把寶貴的資源和人力浪費在重複發明輪子上,花大量精力來研究表格、圖表、報表的開發,文件的格式化,複雜統計演算法的除錯,Email客戶端的編寫,日程與任務的編排,累得筋疲力盡,等到真的要考慮使用者個性化需求的時候,已經強弩之末了。殊不知這些功能,通過VBA程式設計,在Word、Excel、Outlook、Project等Office套件中,全都唾手可得,如果能夠充分利用,很多應用專案(特別是企業應用專案)的開發就會輕快很多。現有的Office軟體具有強大的Web訪問和程式設計能力,把它們與Web結合起來,充分發揮兩端的優勢,這難道不應該是一個很好的企業解決思路嗎?

         在專案開發中使用office二次開發會大大提升效率,但如果在產品研發中則需要考慮office的正版成本以及使用微軟的平臺可能會由此被控制的風險等。這裡有一篇不同觀點的文章:也談為什麼我們不重視Office開發--看孟巖說有感

      如果你覺得我的部落格對你有幫助,請在下面網址中部落格之星評選活動投我一票:

http://vote.blog.csdn.net/item/blogstar/clever101(單擊候選人介紹下面的投他一票那個按鈕)

參與投票有機會獲獎:

     最佳貢獻獎:通過微博分享活動就有機會獲得30元充值卡一張(每週抽選5名)
    幸運獎:凡參與投票使用者就有機會獲得精美小禮品一份。(每週抽選5名)
    積極參與獎:所有參與投票並符合條件的使用者均可獲得20個下載積分。



相關推薦

關於office開發一點思考

作者:朱金燦        今天和朋友聊天。他們要做一個類似excel表格的控制元件。我問他為何不採取MS office二次開發的方式。因此我覺得類似excel表格這種支援公式的複雜表格,一時半會是做不

17 win7 sp1 x64/VS2015下配置creo4.0開發環境——呼叫了眾多開源庫(ceres-solver,PCL1.8.0,office 2016COM介面,MySql資料庫等)

0 引言 本次開發環境的配置是在綜合考慮了開源庫的版本、VS版本以及CREO4.0的版本,同時針對甲方需求選擇了win7 sp1 x64系統。 配置的過程中遇到了形形色色的問題,但是一一解決了。通過這一個帖子,希望總結環境配置的經驗,為以後的專案開發提供借鑑。 1 VS2015 在win7 sp1 x64

dedecms開發:dedetemplate.class.php 動態模板類

filename 外部 運行 mpi public esc val net color dedecms二次開發目錄點這個:dedecms二次開發教程目錄 核心類文件 include/dedetemplate.class.php 用途:用於非核心模塊的動態頁面或列表頁的模板解

VB.Net實現下CATIA開發方法

ror 點擊 doc struct cat inf 定義 then ports 源自網絡。 在visual studio(vb,c#,c++)下使用CATIA進行二次開發有如下特點: -->需要引用CATIA的對象庫 -->需要對象聲明(visua

呼叫中心系統OA開發

清單 二次開發 工作 註意 分辨率 傳真 新增 歷史 有效 1. 既有修改 分辨率顯示自適應調整 工作流數據調整 2. 呼叫中心 語音電話 l 新建任務 字段:任務主題、語音主題、提

(6)微信開發 之 微信文本消息接口實現

微信 odin link 消息處理 nal puts 算法 帳號 接口實現 p.p1 { margin: 13.0px 0.0px 13.0px 0.0px; text-align: justify; font: 16.0px SimSun } p.p2 { margin:

學習 MeteoInfo開發教程(一)

mat 沒有 組件 資源管理 img 教程 layer 添加 bbs 來自氣象家園:http://bbs.06climate.com/forum.php?mod=viewthread&tid=6631 按照教程,沒有太大問題,有些是對c#操作不熟悉導致。 1.添加d

學習 MeteoInfo開發教程(三)

開發教程 cnblogs false raw class .dll dll inf legend 1.breakList的問題 ((PolygonBreak) aLS.breakList[0]).DrawFill=false; 新的類庫將LegendScheme的brea

學習 MeteoInfo開發教程(四)

手動添加 map dem itl 數控 nas 字號 south title 教程四的問題不大。 1.private void AddMapFrame_ChinaSouthSea()、private void AddTitle()兩個函數和public Form1()函數並

Revit開發--Hello World

man dem users att try encoding cli 引用 類庫 部署完開發環境,就要進行每次學習新的技能,必寫的Hello World。 1、打開VS開發環境,新建一個項目類庫RevitDemo。 2、修改Class1名稱為Command。 3、在引

GTS-800開發基本流程總結

win highlight line names 關閉 參數 ble 名稱 速度 1、打開控制器         GT_Open 2、啟動伺服使能        GT_ClrSts 3、軸規劃位置清零       GT_SetPrfPos 4、軸運動模式        

AE開發,解決子窗體使用父窗體的AxControl控件

控件 con pri apc sha item object new end 在子窗體寫構造函數,然後再在父窗體按鈕點擊事件下寫 public frmIDW(AxMapControl axMapControl1) { Initia

學習MeteoInfo開發教程(十

odi 資源 level 無法訪問 .cn oid pub images bsp 1.添加新的Form窗體: 在解決方案資源管理器中,右鍵MeteoInfoDemo,“添加”,“Windows 窗體” 2.新窗體中添加好layersLegend1和Layout之後,要把la

一個星期實現開發,解決很多用戶無法解決的問題

解決方案 版本號 臨時性 開發 用戶 最近,收到一個用戶的體驗分享,他用一個星期完成對H3的從陌生到基本熟悉,再從基本屬性到基本二次自定義開發,對於他對我我們H3的支持,我們表示感謝~~以下是對該用戶的實例分享整理。-------------------------------------

java代碼生成器 快速開發平臺 開發 外包項目利器 springmvc SSM後臺框架源碼

java 下拉聯動 頭像裁剪 圖片裁剪 springmvc A 調用攝像頭拍照,自定義裁剪編輯頭像,頭像圖片色度調節 B 集成代碼生成器 [正反雙向](單表、主表、明細表、樹形表,快速開發利器)+快速表單構建器 freemaker模版技術 ,0個代碼不用寫,生成完整的一個模塊,帶

QGIS(PYTHON3.5、QT5.7.1、QGIS3)系列開發環境

qgis c++ python 二次開發 QGIS(PYTHON3.5、QT5.7.1、QGIS3系列二次開發環境,所有環境以虛擬機方式提供,以便研究或直接使用。 具體包括:獨立應用二次開發環境(WINDOWS,LINUX);android二次開發;獨立應用PYTHON二次開發環境(WI

AE開發中幾個功能速成歸納(符號設計器、創建要素、圖形編輯、屬性表編輯、緩沖區分析)

文件夾路徑 及其 基本框架 option 開啟 rgs database ets remove /* * 實習課上講進階功能所用文檔,因為趕時間從網上抄抄改改,湊合能用,記錄一下以備個人後用。 * * --------------------------------

k3 wise 序時簿開發2

eid 響應 idt eventid ins mar .get ont rdp             這是系統自帶的一些按鈕的事件ID和名稱 300014 單據拆分後事件 300013 單據拆分前事件 300012 單據合並後事件

Web報表工具FineReport開發JS之字符串

報表 獲取字符串 網頁 簡介 popu 能夠 int() 例如 位置 在報表開發過程中,有些需求可能無法通過現有的功能來實現。須要開發者二次開發,以FineReport為例。能夠使用網頁腳本、API接口等進行深入的開發與控制。考慮到JS腳本開發的使用較多。這裏先先簡介怎

結合Django+celery開發定時周期任務

由於 抓取 而是 文檔 code 機會 編輯 越來越大 內存泄漏 需求: 前端時間由於開發新上線一大批系統,上完之後沒有配套的報表系統、監控,於是乎開發、測試、產品、運營、業務部、財務等等各個部門就跟那饑渴的餓狼一樣需要 各種各樣的系統數據滿足他們。剛開