|
>メインフォームに設けたボタンのクリックイベントで、サブフォームに表示された
>データシートの選択行を見にいくわけですが、
>
>Seltopについては辛うじてデータが得られ、Seltopそのものだけでも(先頭から)n行目とわかるのですが、SelHeightはどうやってもそのものの情報が0になってしまうのです。
>あたかも複数行は選択していませんよ!とAccessから言われているような感じです。(T_T)
メインフォームのコマンドボタンをクリックすると、フォーカスはメインフォームの
コマンドボタンへフォーカス移動します。その時点では、すでに選択は解除されてし
まってます。ですので、SelHeight は 0 になります。
対処法としては、2つ考えられます。
コマンドボタンの代わりにラベルのクリック時を利用します。
ラベルだとフォーカス移動しませんので、SelHeight を取得できます。
ラベルの立体表示を「浮き出し」にしておくとボタンのように見せることができます。
ラベルをボタンらしく見せるには下記を参考に。
ボタンクリックでテキストボックスに文字入力 その1 - hatena chips
h tp://hatenachips.blog34.fc2.com/blog-entry-7.html
2つめは、
サブフォームの「フォーカス喪失時」で変数に SelHeight を格納しておく
方法です。
Dim SFSelHeight As Long
Private Sub 埋め込み1_Exit(Cancel As Integer)
SFSelHeight = Me.埋め込み1.Form.SelHeight
End Sub
|
|