Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


74289 / 76732 ←次へ | 前へ→

【6912】クラスモジュール内でのvariant型配列変数の使い方について
質問  ★珍念★ E-MAIL  - 03/8/11(月) 14:10 -

引用なし
パスワード
   皆様、初めまして。珍念と申します。

タイトルにもありますが、クラスモジュール内でのvariant型配列変数の使い方について、分からない点があります。以下に書き出します。

--------------------------------------------------------------------------

・クラスモジュール内で配列変数(variant型)を使用するには、Private Type内で記述する必要がある?
⇒現在は他に使い方が分からない為、この方法を用いて記述しています。

以下コーディング
 ↓↓↓↓

Private Type テーブル

  サブ名 As String
  データ() As Variant   ←問題となっている配列変数
  開始行 As Integer
  終了行 As Integer
  開始列 As Integer
  終了列 As Integer
  行数 As Integer
  列数 As Integer
  
End Type

--------------------------------------------------------------------------

・この配列変数(variant型)を使用して、EXCELシートにあるデータを格納するメソッドを作成します。
⇒ここから先、このメソッドで作成した配列変数(variant型)を使いまわす事がうまくいきません。以下に問題事項をあげます。

--------------------------------------------------------------------------

【問題1】
この配列変数をプロパティとして扱いたいが、このプロパティ内で再度ユーザ定義型変数を宣言する必要があり、宣言すると配列変数(variant)の値がクリアされてしまう。
以下コーディングです。

Public Property Get テーブルデータ()
  Dim tbl As テーブル     ←ここで再度ユーザ定義型宣言しないと使えない
  テーブルデータ = tbl.データ  でも宣言すると値がクリアされてしまう。
End Property            結局なにもデータが格納されない。
                  エラーは出ない。

【問題2】
そこで、クラスモジュール内で使いまわせる方法があればと思い、Private TypeをPublic Typeに変更して記述してみましたが、「オブジェクトモジュール内ではパブリックユーザー定義型は定義できません」のエラーがでてしまう為、これもうまくいきません。

---------------------------------------------------------------------------

どなたか、【問題1】【問題2】どちらでも良いので分かる方はご教授願います。

3 hits

【6912】クラスモジュール内でのvariant型配列変数の使い方について ★珍念★ 03/8/11(月) 14:10 質問
【6913】Re:クラスモジュール内でのvariant型配列変数の使い... ichinose 03/8/11(月) 15:04 回答
【6914】Re:クラスモジュール内でのvariant型配列変数の使い... ichinose 03/8/11(月) 15:32 発言
【6915】Re:クラスモジュール内でのvariant型配列変数の使い... ★珍念★ 03/8/11(月) 16:01 発言
【6950】Re:クラスモジュール内でのvariant型配列変数の使い... ★珍念★ 03/8/13(水) 21:11 お礼

74289 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free