帳票形式のフィールド入力の時、TABオーダーで同一列の下のフィールドに移動したい
使用環境:ACCESS2003
↓のように帳票形式で表示しているテーブル
商品ID 納入日 仕入NO 管理コード
13 20091205 2569
14 20100326 6824
15 20100422 2548
16 20100430 3654
バーコードリーダーで管理コードを
順次入力したいのですが
理想はバーコードリーダー入力が終われば次の管理コードフィールドに
カーソルが移動してくれるのいいのですが、
それが出来ない場合は、バーコードリーダーで値を入力した後、
TABキーやEnterを押すと
次の管理コードフィールドにカーソールが移動するように出来れば
大変嬉しいのですが、
どなたかよきアドバイスをいただけますようお願い申し上げます。
No.2ベストアンサー
- 回答日時:
> ↓のように帳票形式で表示しているテーブル
フォームの帳票形式を使用して、テーブルのデータを表示
されている、ということでよろしいでしょうか。
そうであれば、
> TABキーやEnterを押すと次の管理コードフィールドに
> カーソールが移動する
については、フォームの(コントロールの)設定で対応可能です。
(なお、バーコードリーダーは使用したことがないため、No.1の方と
同様、バーコードの読み込みを拾う方法はわかりません(汗))
1)フォームをデザインビューで開く
2)適当なところをダブルクリックするなどして、プロパティシートを
開いておく
3)EnterキーやTabキーで移動したくないコントロール(テキスト
ボックス)を選択
4)プロパティシートの『その他』タブを選択し、『タブストップ』の
項目を「いいえ」に設定
5)「3~4」の操作を必要なだけ繰り返したら、フォームを保存
して閉じる
・・・以上で、最初の入力時に『管理コード』に移動しておけば、
後はEnter/Tabで次のレコードの管理コードにカーソルが移動
するようになります。
(なお、Shift+Tabの同時押しで前のレコードの管理コードに、
また、F6キーでヘッダ・フッタのコントロールに、それぞれ移動
できます(→移動可能なコントロールがある場合)。)
なお、「3~4」を繰り返し、と書きましたが、デザインビューで
何もコントロールがないところをクリック&ドラッグしたときに表示
される四角形で複数のコントロールを囲むと、囲んだコントロール
が一括で選択されます。
また、複数のコントロールを選択する別の方法として、Shiftキー
を押したまま、対象コントロールを順次クリックしていく、という
方法もあります(間違えて選択した場合は、Shiftキーを押した
まま再度クリックすれば解除が可能)。
この状態にしてやれば、「4」の操作は複数コントロールで一括
で指定できますので、参考まで。
(但し、種類の異なるコントロールを同時選択すると、必要な
項目がプロパティシートに表示されなくなる場合があります
ので、ご注意下さい:
今回の例では、ラベルなど、タブ移動の対象外のコントロール
が同時に選択されてしまうと、『その他』タブに『タブストップ』の
項目が表示されなくなってしまいます)
※バーコード読み込み時は『管理コード』のみの移動にしたいが、
通常の入力時は商品IDなども移動可能でないと困る、という
場合は、マクロ/VBAを使用して設定を切り替えてやることに
なります。
(例えばフォーム フッタにオプショングループを設置し、その更新
後イベントで、商品ID等の「TabStop」プロパティをTrue/False
に切替、と)
No.1
- 回答日時:
Enterキー、Tabキーで移動する方法になりますが、以下でどうなりますか。
管理コードのキークリック時イベントを使います。
Private Sub 管理コード_KeyDown(KeyCode As Integer, Shift As Integer)
If ((Shift = 0) And (Not Me.NewRecord)) Then
Select Case KeyCode
Case vbKeyReturn, vbKeyTab
KeyCode = 0
With Me.Recordset
If ((.AbsolutePosition + 1) < .RecordCount) Then
.MoveNext
Me.管理コード.SetFocus
End If
End With
End Select
End If
End Sub
※
If ((.AbsolutePosition + 1) < .RecordCount) Then
.MoveNext
Me.管理コード.SetFocus
End If
では、最終行にある時には移動しません。
新規登録行があって、その行に移動して良いのなら、
If ((.AbsolutePosition + 1) < .RecordCount) Then
.MoveNext
Else
.AddNew
End If
Me.管理コード.SetFocus
になると思います・・・
※
バーコードの入力をどのイベントで拾えるのか、チョットわからないので、
変更時イベントで一気にとれるのなら、
Len(Me.管理コード.Text) > 0 とかの判別で、上記 With 部分を実行しても???
※
レコードが登録されるタイミングは、.MoveNext ( .AddNew )の箇所になるので、
入力チェック等でエラーがある場合には、エラーが発生すると思いますので、
いろいろ対策をとってみてください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- Access(アクセス) Accessフォームで複数条件でフィールドの値を表示する方法 4 2022/07/21 10:47
- Access(アクセス) アクセスの更新クエリでカレントレコードのみ更新したい 1 2022/06/02 23:32
- Access(アクセス) Accessフォーム 一部のレコードだけを抽出する方法について 1 2022/06/28 18:45
- Excel(エクセル) 表内で、Enterキーで横→行の最後入力したら次の行の先頭に移動するマクロを作りたい 3 2022/05/01 21:19
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Visual Basic(VBA) ActiveReportのdetailをデータセットの自動バインドを使って帳票を出力しています。 1 2023/08/16 07:16
- IT・エンジニアリング ActiveReportのdetailをデータセットの自動バインドを使って帳票を出力しています。 1 2023/08/16 07:17
- Access(アクセス) Accessクエリで年月フィールドを年のみで抽出する方法について 2 2022/08/29 18:10
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
テキストボックスの入力文字を1...
-
タブキー押下時のイベントをひ...
-
一定時間操作されないと自動で...
-
エクセルVBAのテキストボック、...
-
WPFでの時刻入力コントロールに...
-
Visual Basic 6.0 コンボボック...
-
特定のキーを押すまでループさ...
-
VB6で電卓を作っているのですが...
-
C# DateTimePicker をキー入力...
-
(VBA)チェックボックスのclick...
-
コマンドボタン(入力)をクリッ...
-
IEで、BackSpaceで「戻る」機能...
-
キーバッファについての質問
-
【VB】タブ切り替え時のイベント
-
Access データ表示 完了時のイ...
-
コンボボックスにキー入力をさ...
-
プログラミングc# Windowsフォ...
-
onchangeでイベントが発生しません
-
VBでイベント処理を追加する...
-
キーイベントを擬似的に発生さ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【VB】タブ切り替え時のイベント
-
タブキー押下時のイベントをひ...
-
特定のキーを押すまでループさ...
-
(VBA)チェックボックスのclick...
-
WPFでの時刻入力コントロールに...
-
Visual Basic 6.0 コンボボック...
-
一定時間操作されないと自動で...
-
コンボボックスにキー入力をさ...
-
Excel VBA マクロ実行中のみテンキ...
-
VB.NETのDropDownListをReadOnl...
-
フォーカスについてお教えください
-
キーイベントを擬似的に発生さ...
-
IEで、BackSpaceで「戻る」機能...
-
エクセルVBAのテキストボック、...
-
VB.NETでフォームがない...
-
KEYPREVIEW=TRUEについて。意味...
-
EXCEL VBA でIEを制御して、INP...
-
自作ダイアログボックス中のエ...
-
テキストボックスの入力文字を1...
-
Objective-Cでキーボードイベン...
おすすめ情報