none
用word套表列印? RRS feed

  • 問題

  • 可否用.NET寫出一種元件,主要功能是把一些資料來源,塞到Word內,並自動轉存到另一個路徑,讓使用者下載開啟?

     

    例如,先用Word設計一張空的會計憑證單的表格放在Web上,當使用者在Web查詢到某筆資料時,點選列印後,元件就將會計憑證的資料從資料庫匯入那張空的會計憑證單,處理後轉存到某個目錄讓使用者馬上可以下載開啟。

     

    請問各位前輩,我應該研讀哪些技術手冊呢? 有哪些相關資源或範例可以幫助我解決這問題?謝謝。

     

    註:

    1. 此元件要讓ASP, ASP.NET都可以使用。

    2. 主要想套印公文格式。

     

    2007年9月28日 上午 02:36

解答

所有回覆

  • 你要的東西在 aspnet 版討論過很多次了,可在該版搜尋 automation ,不過 automation 不適合用在 asp/aspnet 上,容易造成鎖死。

     

    若你的使用者只有 word xp 以後 (word xp/2003/2007) ,建議使用 xml 格式,可搜尋 wordml,可立即產生且不用暫存。

    詳細資料可參考:

    http://www.microsoft.com/office/xml/

     

    簡例:

    簡易由網頁自動輸出 Office 文件

    http://tlcheng.twbbs.org/Paper/RunPC/132/Office.htm

    2007年9月28日 上午 04:25
    版主
  • 璉璉您好

    小弟因為要用到word來輸出報表

    所以參考了您的這篇

    簡易由網頁自動輸出 Office 文件

    http://tlcheng.twbbs.org/Paper/RunPC/132/Office.htm

    不過在試做的時候

    sFile = Replace(sFile, "(key:受文者)", "網頁程式設計師")
    值都無法帶入

    可是將"(key:受文者)"改成"值"的時候又可以取代的到改成"值1"則不行

    能否請較一下大概會是什麼問題?

    謝謝!!

     

    2007年12月12日 上午 08:55
  • 不知道,沒有更詳細的資料無法猜測。

     

    替換值要考慮到不要接近,要單獨為一。

     

    例如:

    值1, 值11

    替換時,會同時把值11換成替11,若後面要搜尋值11就會找不到。

    2007年12月12日 上午 09:02
    版主
  • 嗯嗯!!小弟遇到的情況如下

     

    申請人姓名:[key:申請人姓名]這樣會無法取代

    申請人姓名:申請姓名這樣可以取代

    所以就想說不如都在需要的值的地方都加上申請兩個字好了

    住址:申請住址---->這樣申請住址可以被正常取代

    聯絡電話:申請電話--->這樣無法取代

     

    還請您幫忙看一下!!或是需要更仔細的資料?

    謝謝!!

     

    PS:像您範例中所舉的sFile = Replace(sFile, "(key:受文者)", "網頁程式設計師")
    小弟直接在我的word的xml裡面設定一個值的地方為(key:受文者),結果程式跑出來後還是顯示(key:受文者)不會被取代掉,看不出來什麼情況會被取代什麼情況不會所以很傷腦筋呢!!

    2007年12月12日 上午 09:10
  • 你用英數測看看看,若英數組合出來的正常,表示裡面有編碼或簡體問題。

     

    另外 Word 那邊要檢查是否有不可顯示字元插在中間,例如冒號後面有無定位字元,或是因為字型設定導致 xml 裡面增加額外資訊。

     

    你可以直接用筆記本開啟 xml 檔,然後搜尋你的關鍵字比較。

    2007年12月12日 上午 09:25
    版主
  • 應該是找到問題了!!謝謝您!!

    看起來好像是因為利用word編輯完儲存成xml檔案時

    因為有一堆字型的標籤而產生問題!!

    不知道是否有好的辦法在儲存時能夠讓標籤不要將資料中斷?

    2007年12月12日 上午 09:51