PALMisLIFE 討論區

標題: [求助] MS 上 COM 的操作:Word & Excel 在 PHP 上 [列印本頁]

作者: Dragoon    時間: 2004-11-12 03:01
標題: [求助] MS 上 COM 的操作:Word & Excel 在 PHP 上
最近工作要解決一個問題:
使用 PHP 輸出 .doc 跟 .xls 報表。
網路上有找到一些資訊,例如:


  1. <?php
  2. // Some servers may have an auto timeout, so take as long as you want.
  3. set_time_limit(0);
  4. // Show all errors, warnings and notices whilst developing.
  5. error_reporting(E_ALL);
  6. // Used as a placeholder in certain COM functions where no parameter is required.
  7. $empty = new VARIANT();
  8. // Load the appropriate type library.
  9. com_load_typelib('Word.Application');
  10. // Create an object to use.
  11. $word = new COM('word.application') or die('Unable to load Word');
  12. print "Loaded Word, version {$word->Version}\n";
  13. // Open a new document with bookmarks of YourName and YourAge.
  14. $word->Documents->Open('D:/apache/Projects/ham/ham_file/Unfilled1.DOC');
  15. // Fill in the information from the form.
  16. // Note use of wdGoToBookmark, from the typelibrary and the use of $empty.
  17. $word->Selection->GoTo(wdGoToBookmark,$empty,$empty,'YourName');
  18. $word->Selection->TypeText($_GET['YourName']);
  19. $word->Selection->GoTo(wdGoToBookmark,$empty,$empty,'YourAge');
  20. $word->Selection->TypeText($_GET['YourAge']);
  21. // Save it, close word and finish.
  22. $word->Documents[1]->SaveAs("D:/apache/Projects/ham/ham_file/" . $_GET['YourName'] . ".doc");
  23. $word->Quit();
  24. $word->Release();
  25. $word = null;
  26. print "Word closed.\n";
  27. ?>
複製代碼


這樣的程式碼對 PHP 中如何應用 COM 是有相當的幫助,但是,這些操作 Word 跟 Excel 的 method 要去哪找呢? google 跟微軟的站台內輸入 COM Word Excel 都找不到高相關的資料,驢子找 com 給一些 computer component comXXX 的結果也不太有用,讓對微軟相當不熟悉的我實在很傷腦筋。

請教對微軟熟的朋友,這個資訊要去哪找?找書的話要往哪個類別去看?
(VB?)

順道晚安~

[ Last edited by Dragoon on 2004-11-12 at 03:02 ]
作者: nekocat    時間: 2004-11-12 08:52
標題: Re: [求助] MS 上 COM 的操作:Word & Excel 在 PHP 上
您可以參考一下VBA和巨集的寫作
看您的Code跟我在用Delphi時很像,
相關的Method在Office的目錄下有Help可以看,
Word是VBAWRD9.CHM
Excel是VBAXL9.CHM
(9是Office版本別,我的是Office2000)
您可以看一下是不是您要的...
作者: double    時間: 2004-11-12 09:45
標題: Re: [求助] MS 上 COM 的操作:Word & Excel 在 PHP 上
你要的功能在Microsoft's Term叫做 Automation.
Automation 的定義在我的認知裡就是可執行的檔案另外提供的Inteface給其它程式乎叫用的。

幾個例子。
"Automating Microsoft Office 97 and Microsoft Office 2000" 這是MSDN上的。

WD98: How to Use (OLE) Automation with Word
作者: Dragoon    時間: 2004-11-12 12:09
標題: Re: [求助] MS 上 COM 的操作:Word & Excel 在 PHP 上
Originally posted by nekocat at 2004-11-12 08:52 AM:
您可以參考一下VBA和巨集的寫作
看您的Code跟我在用Delphi時很像,
相關的Method在Office的目錄下有Help可以看,
Word是VBAWRD9.CHM
Excel是VBAXL9.CHM
(9是Office版本別,我的是Office2000)
您可以看一下是不是您要的...


啊!!好棒!!應該就是這個!!
我來試看看!謝謝!
作者: Dragoon    時間: 2004-11-12 12:14
標題: Re: [求助] MS 上 COM 的操作:Word & Excel 在 PHP 上
Originally posted by double at 2004-11-12 09:45 AM:
你要的功能在Microsoft's Term叫做 Automation.
Automation 的定義在我的認知裡就是可執行的檔案另外提供的Inteface給其它程式乎叫用的。

幾個例子。
"Automating Microsoft Office 97 and Microsoft Office 2000" 這是MSDN上的。

WD98: How to Use (OLE) Automation with Word


恩嗯!很像的東西!謝謝!!




歡迎光臨 PALMisLIFE 討論區 (http://f.pil.tw/) Powered by Discuz! X2.5