VBでのサンプルなのでAccessで実現できるか?
テキストボックス内でのタブキーやEnterキーの有効化
■タブキー
object.TabKeyBehavior = Boolean
■Enterキー
sampleForm.nameText.MultiLine = True
sampleForm.nameText.EnterKeyBehavior = True
VBでのサンプルなのでAccessで実現できるか?
テキストボックス内でのタブキーやEnterキーの有効化
■タブキー
object.TabKeyBehavior = Boolean
■Enterキー
sampleForm.nameText.MultiLine = True
sampleForm.nameText.EnterKeyBehavior = True
通常では、クエリーの結果をポップアップで表示することができません。
よって、フォームを作ってポップアップにして、そこにクエリー結果を表示します。
呼び出すフォーム上で、下記命令を実行します。
DoCmd.OpenForm stDocName, acFormDS, , stLinkCriteria
acFormDS これをセットしておかないとデータシートビューにならず、意図した結果が表示されない。
<手順>
1.クロス集計クエリーのフォーム、『ポップアップ』をはいに設定
2.呼び出すフォームボタンのクリックイベント等で先ほどの1行を記述する
DoCmd.OpenForm stDocName, acFormDS, , stLinkCriteria
dim i as Integer
For i = Forms.Count - 1 To 0 Step -1
DoCmd.Close acForm, Forms(i).Name
Next i
DoCmd.OpenForm "業務メニュー"
フォームとサブフォームのやり方と同じ
・親フォームを作る
・子フォームを作る
・親フォームの詳細に作成済みの子フォームをドラッグする
※当然ながら、子フォームは1つしかセットできない 2個目以降の子フォームは無視される
参考url
http://www.accessclub.jp/bbs2/0092/beginter28305.html
タイトル | : Re^5: 続 フォーム【データシート形式】でサブデータシートを表示させたいのですが |
記事No | : 28312 |
投稿日 | : 2006/10/30(Mon) 00:59 |
投稿者 | : Moko |
名前が無いと混乱するかもしれないので
テーブルを
T_Main
T_Sub
とします。
親フォーム作成
フォームを[新規作成] - [オートフォーム: データシート]
基になるテーブル T_Main
名前を付けて保存: F_Main
閉じる
子フォーム作成
フォームを[新規作成] - [オートフォーム: データシート]
基になるテーブル T_Sub
名前を付けて保存: F_Sub
閉じる
サブフォーム作成
F_Main をデザインビューで開く
詳細セクションの高さを拡げる(2cm程度)
データベースウィンドウから、F_Sub を 詳細セクションにドラッグ
この段階で、プロパティの[ソースオブジェクト]に、「F_Sub」と表示されているはず。
[リンク子フィールド]・[リンク親フィールド]が正しく設定されていなければ設定する。
上書き保存
こんな手順で出来ます。
なお、Access2000では、親フォームのデータが1件もない場合には「+」が表示されないようですね。
もちろん、入力した段階で表示されますが。
カレントレコードが何処にあるのかわかりにくいので、行全体を反転させます。
レコード移動時イベントに1行書くだけ。
Private Sub Form_current()
DoCmd.RunCommand acCmdSelectRecord
End Sub
テーブルやクエリをデータシートビューで開くのなら、これでOK。