Access VBA質問箱 IV

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

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


3640 / 9994 ←次へ | 前へ→

【9613】Re:配列変数の引き渡し方
回答  YU-TANG  - 07/6/26(火) 0:26 -

引用なし
パスワード
   こんばんは、YU-TANG です。

> というエラーがでます。
> Private Sub d14_Click(ByRef avarData())

これ、ラベルですよね。
ラベルのクリック時イベントに avarData という引数はありません。
勝手に追加しても、認識してくれるわけではありません。

直接の回答にはなっていないと思いますが、こういう場合は
WithEvents とクラスで実装するのが定石です。

まずクラスモジュールを挿入して、以下のように記述します。

Option Compare Database
Option Explicit

Private WithEvents lbl As Access.Label

Private Sub Class_Terminate()
  Set lbl = Nothing
End Sub

Public Property Set Label(ByVal vNewValue As Access.Label)
  Set lbl = vNewValue
  lbl.OnClick = "[Event Procedure]"
End Property

Private Sub lbl_Click()
  Screen.ActiveControl.Value = lbl.Tag
End Sub

クラスモジュール名は任意ですが、とりあえずここでは「clsDateLabel」
という名前を付けたと仮定します。

次に、フォームの(クラス)モジュール先頭で次のように宣言。

Option Compare Database
Option Explicit

Dim dic As Object ' クラス保持用 Dictionary オブジェクト

Private Sub Form_Close()
  Set dic = Nothing
End Sub

最後に、Form_Load() のループ中で次のように初期化します。

> Me(tsuki(j) & i).Caption = Day(p)
Me(tsuki(j) & i).Tag = p
Set dic(tsuki(j) & i) = New clsDateLabel ' インスタンス作成
Set dic(tsuki(j) & i).Label = Me(tsuki(j) & i)

これで、ラベルのクリック時イベントプロシージャを個別に
作成しなくても、クラスが勝手に処理してくれるはずです。

それでは。
2,924 hits

【9611】配列変数の引き渡し方 メイ子 07/6/25(月) 15:40 質問[未読]
【9613】Re:配列変数の引き渡し方 YU-TANG 07/6/26(火) 0:26 回答[未読]
【9621】Re:配列変数の引き渡し方 メイ子 07/6/26(火) 15:38 お礼[未読]
【9616】Re:配列変数の引き渡し方 hatena 07/6/26(火) 2:30 回答[未読]
【9622】Re:配列変数の引き渡し方 メイ子 07/6/26(火) 15:44 質問[未読]
【9624】Re:配列変数の引き渡し方 hatena 07/6/26(火) 20:15 回答[未読]
【9630】Re:配列変数の引き渡し方 メイ子 07/6/28(木) 16:46 質問[未読]
【9631】Re:配列変数の引き渡し方 hatena 07/6/28(木) 21:55 回答[未読]
【9634】Re:配列変数の引き渡し方 メイ子 07/6/29(金) 11:22 質問[未読]
【9635】Re:配列変数の引き渡し方 hatena 07/6/30(土) 8:09 回答[未読]
【9643】Re:配列変数の引き渡し方 メイ子 07/7/2(月) 21:05 質問[未読]
【9659】Re:配列変数の引き渡し方 hatena 07/7/5(木) 10:56 回答[未読]
【9660】Re:配列変数の引き渡し方 メイ子 07/7/5(木) 14:49 質問[未読]
【9662】Re:配列変数の引き渡し方 hatena 07/7/5(木) 21:45 回答[未読]
【9666】Re:配列変数の引き渡し方 メイ子 07/7/6(金) 17:39 質問[未読]
【9670】Re:配列変数の引き渡し方 hatena 07/7/7(土) 11:08 回答[未読]
【9676】Re:配列変数の引き渡し方 メイ子 07/7/9(月) 11:05 質問[未読]
【9677】Re:配列変数の引き渡し方 hatena 07/7/9(月) 11:38 回答[未読]
【9682】Re:配列変数の引き渡し方 メイ子 07/7/10(火) 14:20 質問[未読]
【9683】Re:配列変数の引き渡し方 hatena 07/7/10(火) 14:40 回答[未読]
【9685】Re:配列変数の引き渡し方 メイ子 07/7/10(火) 19:03 質問[未読]
【9689】Re:配列変数の引き渡し方 hatena 07/7/11(水) 13:31 回答[未読]
【9691】Re:配列変数の引き渡し方 メイ子 07/7/11(水) 14:01 お礼[未読]
【9703】Re:配列変数の引き渡し方 メイ子 07/7/21(土) 12:23 質問[未読]
【9704】Re:配列変数の引き渡し方 hatena 07/7/21(土) 22:20 回答[未読]
【9705】Re:配列変数の引き渡し方 メイ子 07/7/23(月) 12:01 質問[未読]
【9706】Re:配列変数の引き渡し方 hatena 07/7/23(月) 15:31 回答[未読]
【9708】Re:配列変数の引き渡し方 メイ子 07/7/25(水) 15:10 質問[未読]
【9709】Re:配列変数の引き渡し方 hatena 07/7/26(木) 9:51 回答[未読]
【9712】Re:配列変数の引き渡し方 メイ子 07/7/26(木) 18:20 お礼[未読]

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