Top > JavaのプログラムをVBAのプログラムに移植する方法
VBAのクラスはコンストラクタを定義できません。
クラスモジュールにコンストラクタの処理を定義しておいて、クラスモジュール
とペアになる標準モジュールを作って標準モジュールのプロシージャからその
処理を呼び出すようにします。
クラスモジュールにコンストラクタの処理を定義しておいて、クラスモジュール
とペアになる標準モジュールを作って標準モジュールのプロシージャからその
処理を呼び出すようにします。
VBAではプロパティの宣言と初期値の代入を同時に行うことができません。
コンストラクタの中で初期値を設定することで、インスタンスの生成時に
初期値を代入します。
コンストラクタの中で初期値を設定することで、インスタンスの生成時に
初期値を代入します。
戻り値がvoid以外のメソッドは、Fucitonプロシージャに置き換えます。
戻り値がvoidのメソッドは、Subプロシージャに置き換えます。
値を設定する setXXX メソッドは、Property Let または、Property Set
プロシージャに置き換えます。
値を取得する getXXX メソッドは、Property Get プロシージャに置き換えます。
戻り値がvoidのメソッドは、Subプロシージャに置き換えます。
値を設定する setXXX メソッドは、Property Let または、Property Set
プロシージャに置き換えます。
値を取得する getXXX メソッドは、Property Get プロシージャに置き換えます。
VBAのクラスは実装の継承をサポートしていません。
スーパークラスに抽象メソッドの実際の処理が記述されているインスタンスの
情報を保持するプロパティを定義して、抽象メソッドを呼び出すメソッドでは、
そのプロパティを参照して抽象メソッドの実際の処理が記述されているメソッド
を呼び出すようにします。
スーパークラスに抽象メソッドの実際の処理が記述されているインスタンスの
情報を保持するプロパティを定義して、抽象メソッドを呼び出すメソッドでは、
そのプロパティを参照して抽象メソッドの実際の処理が記述されているメソッド
を呼び出すようにします。
VBA の IDE は実体のないプロシージャを自動的に削除してしまいます。
それを防ぐために、インターフェイスとして参照される側のクラスに定義する
メソッドに実行する処理を記述する必要がない場合でもコメント行を書くよう
にします。
それを防ぐために、インターフェイスとして参照される側のクラスに定義する
メソッドに実行する処理を記述する必要がない場合でもコメント行を書くよう
にします。
VBA のクラスには Java の clone メソッドに相当するインスタンスのコピー
機能がありません。
メンバー情報をユーザー定義型として定義して、メンバー情報をコピーする
メソッドを自作します。
機能がありません。
メンバー情報をユーザー定義型として定義して、メンバー情報をコピーする
メソッドを自作します。
VBA のクラスはインスタンスの内容を文字列に変換する toString メソッドを
サポートしていません。
必要であれば toString メソッドを自作します。インスタンスを文字列に変換
する必要がある場合には明示的に toString メソッドを呼び出す必要があります。
サポートしていません。
必要であれば toString メソッドを自作します。インスタンスを文字列に変換
する必要がある場合には明示的に toString メソッドを呼び出す必要があります。
Java では、==、equals メソッドなどでインスタンスの比較を行いますが、
VBAでは Is 演算子を使ってインスタンスの比較をおこないます。
Java では instanceOf であるインスタンスが特定のクラスのインスタンスか
どうかを判断できますが、VBA には instanceOf に相当する機能がありません。
必要であれば自作します。
VBAでは Is 演算子を使ってインスタンスの比較をおこないます。
Java では instanceOf であるインスタンスが特定のクラスのインスタンスか
どうかを判断できますが、VBA には instanceOf に相当する機能がありません。
必要であれば自作します。
Java では String は参照型ですが、VBA では String は参照型でない
プリミティブ(基本的)なデータ型の1つです。
したがって、String に Nothig を代入して特別な状態を設定することはでき
ません。
プリミティブ(基本的)なデータ型の1つです。
したがって、String に Nothig を代入して特別な状態を設定することはでき
ません。
Java では整数のデータを扱うときに int を使うことが多いですが、VBA では
Long を使うことが多いです。Java では int が32ビットの整数ですが、
VBA では Long が32ビットの整数になっています。
Long を使うことが多いです。Java では int が32ビットの整数ですが、
VBA では Long が32ビットの整数になっています。
ArrayList、HashMap、Properties、などの Java のクラスライブラリで定義
されているクラスについては、Collection、Dictionary などの VBA のクラス
で代用できることがあります。代用できない場合は Java のクラスライブラリ
で定義されているクラスと同じ機能を持つクラスを自作します。
されているクラスについては、Collection、Dictionary などの VBA のクラス
で代用できることがあります。代用できない場合は Java のクラスライブラリ
で定義されているクラスと同じ機能を持つクラスを自作します。
Java では、AWT/Swing を使って GUI を構築しますが、VBA ではユーザー
フォームを使って GUI を構築します。
VBA のユーザーフォームは用途がダイアログに限定されており、イベントの
考え方も AWT/Swing とは異なるので、作り直しになります。
フォームを使って GUI を構築します。
VBA のユーザーフォームは用途がダイアログに限定されており、イベントの
考え方も AWT/Swing とは異なるので、作り直しになります。
コレクション関係のメソッド名などは VBA の Collection や Dictionary で
使われているメソッド名に合わせておくと、メソッド名から何をするメソッド
かがすぐにわかります。
コレクションの値を取得するメソッドは「Item」
コレクションに値を追加するメソッドは「Add」
コレクションの値を削除するメソッドは「Remove」
コレクションの要素数を取得するメソッドは「Count」
Top > Java のプログラムを VBA のプログラムに移植する方法
使われているメソッド名に合わせておくと、メソッド名から何をするメソッド
かがすぐにわかります。
コレクションの値を取得するメソッドは「Item」
コレクションに値を追加するメソッドは「Add」
コレクションの値を削除するメソッドは「Remove」
コレクションの要素数を取得するメソッドは「Count」
Top > Java のプログラムを VBA のプログラムに移植する方法
このページへのコメント
3oPmsh Thank you ever so for you blog.Really looking forward to read more. Fantastic.
<a href="http://pradabag.promo-amdindonesia.com/">プラダ トート</a> 正規品販売認定店!http://pradabag.promo-amdindonesia.com/
篁ャ鐔鐚常湿障域障蕁障 若 http://www.fetang.com/