名前 題名 ▼ Mr.XRAYさん > ▼ よしんさん > > お待たせしました.長文です.ご注意下さい. > > よしんさんの設定の場合,「サーバーによって例外」のエラーも考えられますが, > このエラーとして説明させて頂きます. > なお,以下の説明は,実際のエラーの発生を確認してのことではありません. > したがって,間違っている可能性もあります. > > (1) [コンポーネント][パッケージのインストール]では > Microsoft Office XP Sample Automation Server Wapper Components > となっています. > これは,[カテゴリ]の[Servers]でTExcelApplication等のコンポをFormに > 配置した時に,ExcelXPのコードを使用するぞ!! という意味です. > > (2) ところが,実際に使用するExcelはExcel2000である. > というのが根本的な問題です. > usesにExcel2000とExcelXPの両方があるは(1)の設定のせいです. > > で,解決策ですが,Excel2000用として開発,実行可能アプリの作成と限定 > することにします. > > (1) Delphi2005を「VCLフォームアプリケーション」モードにします. > ([ファイル][新規作成]で選択します) > (2) http://mrxray.on.coocan.jp/Delphi/plExcel/index.htm > の図1と2を参考にして, > Microsoft Office XP Sample Automation Server Wapper Components > をパッケージから削除します. > (3) パッケージdcloffice2k90.bplをインストール(追加)します. > ..\BDS\BINフォル・#95;にあります. > これで[カテゴリ]Servers]のコンポはExcel2000専用となります. > (4) プログラムのUnitから,ExcelXPを削除します. > これで,私のエクセル操作フォームと同じコードが使用可能となります. > (5) コードのタイピングにコード補完(?)を利用すると便利です. > SaveAs( までタイプしたら[Ctrl]+[Space]を押すと,引数の一覧が表示 > されます.これを読むと,必要な引数の数と変数の種類がわかる場合が > あります. > > 追記: > では,何故私のエクセル操作フォームでは,Excel97,2000,XP,2003でも使用可能 > なのか. > それは,エクセル操作フォームでは,[Servers]のコンポを直接使用(Formに > 配置)しないで,コード内で生成しているからです,この時Excel2000用のコ > ードを使用するようになっています. > > そして,どうしても他のExcelのバージョンとの違いがある場合は,Excelのバー > ジョンを調査して,分岐処理しているからです. > > # ふぅっと... GIF,JPEG,PNG画像ファイル及びLZH,ZIPファイルをアップロードできます.600 x 1200 ピクセルを超える画像は縮小表示されます(画像クリックで拡大表示). (上限122000(120k)バイト) 削除キー Link