ACCESSについての質問です。3つあります。
1.SetFocusについて
コンボボックスで値を選択し、エンターキーを押した時に入力チェックをし、
エラーであれば再度、同じコンボボックスをフォーカスしたいと思っています。
ACCESS
1Private Sub コンボ_KeyDown(KeyCode As Integer, Shift As Integer) 2 3 If KeyCode <> vbKeyReturn Or vbKeyTab Then 4 KeyCode = 0 5 6 'Enter押下時のチェック処理 7 ElseIf KeyCode = vbKeyReturn Then 8 9 If コンボ = 0 Then 10 MsgBox "エラー" 11 コンボ.SetFocus 12 End If 13 End If 14End Sub
例えば上記のようなコードを書いたのですが、普通に次のフィールドに移ります。
どうすればその場にカーソルが留まりますでしょうか?
2.Date型から数値型への変換について
テキストボックスに、初期値でyyyy/mm/ddの形式で現在時刻を表示し、
カーソルがあったら8桁の数字を表示。離れたら再度yyyy/mm/ddにしたいと考えてます。
ACCESS
1Private Sub 日時_Click() 2 3Me.日時 = Format(Me.日時, "00000000") '1 4Me.日時 = Format(Me.日時, "yyyymmdd") '2 5 6End Sub 7
'1の場合は、2017/03/16が、05332321みたいに変な値に…
'2の場合は、オーバーライドした、とのエラーが発生します。
どうしたら、2017/03/16が、20170316のように変換されますでしょうか。
3.SQLで取得した値を画面に表示する場合(コードの記述で)
ACCESS
1 Dim cn As ADODB.Connection 2 Dim rs As ADODB.Recordset 3 Dim mySQL As String 4 5 Set cn = CurrentProject.Connection 6 Set rs = New ADODB.Recordset 7 8 mySQL = "SELECT mojiB FROM TableA WHERE moji = '" & コンボ.Value & "';" 9 rs.Open mySQL, cn 10 テキストA = rs!mojiB 11 Exit Sub
上記のようなコードを記述して、テキストAにTableAから抽出したmojiBを表示したいのですが、表示されません。
こちらもどうしたらよいのか教えて頂きたいです。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/03/21 14:54