ExcelWork.info

モジュール内のコードを操作する(CodeModule のプロパティ)

CodeModule オブジェクト

モジュール内のコードの追加、削除、編集等を行う場合に使用します。


【書式】

<取得>
object.CodeModule


引数・戻り値
  • object  ・・・  対象となる VBComponent オブジェクトを指定します。



CodeModule の主なプロパティ


CodeModule.CountOfLines プロパティ

object で指定したモジュール内のコードの行数を長整数型(Long)の値で取得します。


【書式】

object.CountOfLines


引数・戻り値
  • object  ・・・  対象となる CodeModule オブジェクトを指定します。

CodeModule.CountOfDeclarationLines プロパティ

object で指定したモジュール内の宣言セクションのコードの行数を長整数型(Long)の値で取得します。


【書式】

object.CountOfDeclarationLines


引数・戻り値
  • object  ・・・  対象となる CodeModule オブジェクトを指定します。

CodeModule.Lines プロパティ

object で指定したモジュール内で指定した部分のコードを文字列型(String)で取得します。


【書式】

object.Lines ( startline [, count ] )


引数・戻り値
  • object  ・・・  対象となる CodeModule オブジェクトを指定します。
  • startline  ・・・  取得する先頭行を長整数型(Long)の値で指定します( 1 以上の値)。
  • count  ・・・  取得する行数を長整数型(Long)の値を指定します。

CodeModule.ProcBodyLine プロパティ

procname に指定したプロシージャの最初の行を長整数型(Long)の値で取得します。


【書式】

<取得>
object.ProcBodyLine ( procname, prockind )


引数・戻り値
  • object  ・・・  対象となる CodeModule オブジェクトを指定します。
  • procname  ・・・  プロシージャの名前を指定します。
  • prockind  ・・・  プロシージャの種類を表す数値(0 ~ 3)を指定します。
    説明
    0 プロパティプロシージャ以外のすべてのプロシージャ
    1 プロパティに値を設定するプロシージャ
    2 オブジェクトへの参照を設定するプロシージャ
    3 プロパティの値を取得するプロシージャ


プロシージャの最初の行とは、Sub、Function、または Property ステートメントがある行のことです。


CodeModule.ProcCountLines プロパティ

procname に指定したプロシージャの行数を 長整数型(Long)の値で取得します。
ここでの行数は、procname の直前のプロシージャの 最終行(End Sub ステートメントEnd Function などを含む行)の次の行、または、最も上にあるプロシージャの場合は、宣言セクションの次の行から指定したプロシージャの最終行までの行数で、空白行も含みます。


【書式】

<取得>
object.ProcCountLines ( procname, prockind )


引数・戻り値
  • object  ・・・  対象となる CodeModule オブジェクトを指定します。
  • procname  ・・・  プロシージャの名前を指定します。
  • prockind  ・・・  プロシージャの種類を表す数値(0 ~ 3)を指定します。
    説明
    0 プロパティプロシージャ以外のすべてのプロシージャ
    1 プロパティに値を設定するプロシージャ
    2 オブジェクトへの参照を設定するプロシージャ
    3 プロパティの値を取得するプロシージャ


CodeModule.ProcStartLine プロパティ

procname に指定したプロシージャの開始行を長整数型(Long)の値で取得します。


【書式】

<取得>
object.ProcStartLines ( procname, prockind )


引数・戻り値
  • object  ・・・  対象となる CodeModule オブジェクトを指定します。
  • procname  ・・・  プロシージャの名前を指定します。
  • prockind  ・・・  プロシージャの種類を表す数値(0 ~ 3)を指定します。
    説明
    0 プロパティプロシージャ以外のすべてのプロシージャ
    1 プロパティに値を設定するプロシージャ
    2 オブジェクトへの参照を設定するプロシージャ
    3 プロパティの値を取得するプロシージャ


ここでのプロシージャの開始行とは、procname の直前のプロシージャの 最終行(End Sub ステートメントEnd Function などを含む行)の次の行、または、最も上にあるプロシージャの場合は、宣言セクションの次の行を指します。


CodeModule.ProcOfLine プロパティ

指定された行が属しているプロシージャ名を取得します。


【書式】

<取得>
object.ProcOfLine ( line, prockind )


引数・戻り値
  • object  ・・・  対象となる CodeModule オブジェクトを指定します。
  • line  ・・・  調べる行を長整数型(Long)の値で指定します。
  • prockind  ・・・  プロシージャの種類を表す数値(0 ~ 3)を指定します。

プロシージャ宣言の前にある空白行やコメント行はプロシージャに含まれます。最後にあるプロシージャの場合は、プロシージャの後にある空白行もプロシージャに含まれます。



CodeModule のプロパティ 使用例

CountOfLines プロパティ / CountOfDeclarationLines プロパティ / Lines プロパティ を使ったサンプル


実行結果 1



ProcBodyLine プロパティ / ProcCountLines プロパティ / Lines プロパティ を使ったサンプル


実行結果 2



ProcOfLine プロパティ を使ったサンプル


実行結果 3