カテゴリ:仕事
実際に開発している方にとっては「何を今更」って話ですが、
VBとExcelとの連携は注意が必要です。 他の言語は、業務で使ったことないので知りません。 尚、今回は使用している用語にすこぶる自信がありません。 意味を汲み取って下さい。訂正コメント大歓迎です。 ■参照設定 (静的バインディングまたは事前バインディング) はしない Excel(に限らずOffice製品)は、バージョンごとに利用するDLLが違います。 参照設定してると自動的にコーディング最中に自動ヒント (.を入力した後に次のコード候補が出てくる奴)が出るので 便利ですが、異なるバージョンのExcel環境で実行しようとした時、 いきなりエラーで落ちます。 VB.NETにいたってはコンパイルすら通りません。 コード内で宣言してちゃんと動くかを検証するしかないでしょう。 ■対応するExcelバージョン全てで動作確認をする 上のことが分かっていれば当然ですが、Excel2003で動くのに Excel2000では動かないなんてことがあります。 お客さんと必ず握る必要があります。 まだExcel97が大半という会社もいっぱいあります。 Excel97についてはMicrosoftはサポートしていません。 問題が発覚してもどうしようもありません。 ■同じExcelバージョンでも動いたり動かなかったり サービスパックの有無だけで動いたり動かなかったりします。 しかも最悪なことにExcelのバージョンがSPまで同じであっても XPだと動くのに2000だと動かないなんてこともありました。 お客さんとはOSも含めて握る必要があります。 ■Excelのいろんな機能を使わない Excelの機能をつかうと、かなり見栄えのよいものを出力できます。 が、大抵バージョン間の不具合が発生するのはその部分です。 Excel出力は、単純な一覧(SELECTを単純に出力したもの)程度に して、それ以上の帳票(見積書とか)は、帳票ソフトと連携した方が 無難です。 ■Excelがメモリに残りっぱなしになってない? VBでExcelを実行してデータを貼り付け表示。 Excelを閉じた後、まだタスクにExcelが残っていたりしませんか? 1個残れば10回やったら10個残ります。 1日何回も再起動するわけないので結構な致命傷になります。 対処の仕方が、VB6.0時代にも問題になって、VB.NETになったら更に 深刻になっています。 Microsoftも対処法を提示しているし、最近ではちょっと調べれば 公開しているページもたくさんあります。 本職がプログラマーと自認しているので、コーディングレベルの話に なると結構ネタはあるんですがこのくらいで。 (私のサイトにもそのうち書こうかとおもってます。) お気に入りの記事を「いいね!」で応援しよう
Last updated
2005/12/09 12:33:29 AM
コメント(0) | コメントを書く
[仕事] カテゴリの最新記事
|
|