• 締切済み

Access97のVBAでキーボードを制御する方法は?

ARCの回答

  • ARC
  • ベストアンサー率46% (643/1383)
回答No.4

常に上書きにするというのであれば、定型入力プロパティで何とか代用できると思 います。 テキストボックスの定型入力/InputMaskプロパティを CCCCCCCC;;" " (Cをフィールドの最大長だけ並べる)と設定し、 Private Sub テキスト0_GotFocus() Me.テキスト0.SelStart = 0 Me.テキスト0.SelLength = 1 End Sub Private Sub テキスト0_AfterUpdate() If IsNull(Me.テキスト0) = False Then Me.テキスト0 = RTrim$(Me.テキスト0) End If End Sub ってなコードを書いてやれば、ある程度違和感無く使えるんじゃないでしょうか。

関連するQ&A

  • ACCESS2007 VBAでのFilterOnについて

    はじめまして。 ACCESS2007 VBAでのFilterOnについて教えてください。 ACCESS2003で、フォーム上でレコードを抽出するのに、FilterOnを使用して行っていました。未連結テキストボックスに入力した文字列をキーにして「抽出」「解除」ボタンで実行してさせていました。連続して「抽出」「解除」を繰り返しても問題ありませんでした。 ところが、ACCESS2007においても実行できるのですが、連続して操作するとうまくいきません。2回目以降テキストボックスに何を入力しても、1回目にテキストボックスに入力した文字列で抽出しまうのです。解決策はあるのでしょうか?

  • VBA IMEとSetfocusについて

    VBAでユーザーフォームを作っています。 フォーム中のテキストボックス1に、プロパティからIMEモードをひらがなに設定しているのですが、SetFocusでテキストボックス1にフォーカス状態にして文字を入力すると何故か半角英数字になってしまいます。 その状態から一旦別のテキストボックスをクリックして、再度テキストボックス1をクリックするとひらがな入力に直ってます。 何故このような現象が起きるのでしょうか?

  • VBAのフォーム カーソル移動

    VBAのフォームでテキストボックス(1)~テキストボックス(5) まで作ったとします。 カーソルの移動はtabindexの値を順番につければいいのですが、例えばENTERキーとTABキーを両方押したときは カーソルが一つ飛ぶ制御をしたいのですがどうすればいいでしょうか? つまり カーソルがテキストボックス(1)にいる状態でENTERキーとTABキーを同時に押せばカーソルがテキストボックス(3)に移動するようにしたいのですが、お願いします

  • VBAユーザーフォームで

     エクセルVBAでユーザーフォームより、テキストボックスで入力させたものをセルに表示させようとしています。  テキストボックスは1と2があり、テキストボックス1で入力した値の最初の5文字+固定値をテキストボックス2に自動で入力(表示)したいのですがなかなかうまくいきません。(自動入力後、手動で一部修正します。)  VBAをはじめたばかりの初心者ですが、どうぞよろしくお願いします。

  • アクセスVBAについて

    "問題数フォーム"というフォームに国語、社会、数学、英語、理科テキストボックスが5個あります。別に得点入力フォームが各教科ごとにあります。で、各教科のフォームにはそれぞれ第1問から第5問までの得点を入力するようになってます。で、例えば問題数フォームの国語に4と入力すれば国語の得点入力フォームの第1問から第4問までを表示して、第5問を非表示にするということをVBAで記述したいんですが、どのようにすればいいのかわかりません。教えてください。

  • Access VBA 他アプリケーション

    Accessのフォームから他アプリケーションを起動するボタンをつくります。 起動したアプリケーションの入力フォームへ、Accessのフォームのテキストボックスの内容を書き込む事はできないでしょうか? 例えば、Accessのフォームに『OKWave』と入力されたテキストボックスと、ブラウザが開くボタンが配置されているとします。ボタンをクリックするとブラウザが起動し、起動したら任意の検索サイトが表示され、そのサイトのフォームに、Accessのフォームのテキストボックスにかかれている、『OKWave』が自動的に入力するようなVBAを書きたいと思います。 よろしくお願いします。

  • キーボードに入力させるには

    前に同じような質問したのですが、聞き方が悪かったみたいなので再度質問します。 VBAやVBなどで、キーボードを制御するようなことをすることはできないでしょうか? たとえば、aっていうキーを1秒間押させる・・・のようなものです。「textbox1.text = textbox1.text & 'a'」 などというやり方ではなく、キーボード自体に入力させるということです。 調べてみたんですが、よくわかりません;APIとか、そういったキーワードは見つかるのですが、 ちゃんと説明してくれてるサイトが見当たらないので、知識のある方に助けていただきたいです。 具体的にどういったプログラムが目的かと言われますが、ほんとに今言ったような、「a」というキーを 1秒間押させるだけ、といったものです。 できたらVBAでの書き方(ソース)を教えてもらいたいです。どうかよろしくお願いしますm(__)m

  • vbaについて

    ユーザーフォームで作ったテキストボックス1とテキストボックス2があります。 テキストボックス1、テキストボックス2にはそれぞれブログラムが書かれています。 テキストボックス1にキーボードから数字を入力してからテキストボックス2にキーボードから 数字を入力します。 本当はテキストボックス1を入力して、テキストボックス2を入力した後、エンターを押して二つのプログラムを同時に動かしたいのですがどうすればいいでしょうか? テキストボックス2のエンターイベントも試しましたが、全然ダメでした。 分かりにくい文章で申し訳ありませんが、教えて下さい。 よろしくお願いします。

  • VBAでvlookupみたいに

    いつもわかりにくい質問ないようですみません。 今回もどういっていいわからないので、やりたいことを順を追って 書きますので、教えてください。 質問1) (1)VBAユーザーフォーム1でテキストボックスに入力 例)テキストボックス1・・・1200   テキストボックス2・・・えんぴつ これをエクセルシート1に反映させる。(下のように)    A    B 1 1200 えんぴつ 2   (2)ユーザーフォーム2でテキストボックスに  (1)のテキストボックス1で入力した数字を入力すると、  (1)のテキストボックス2の文字列を自動で反映してくる。 ・・・のように。 もうひとつ。 質問2) エクセルセル内のデータをVBAのテキストボックスに読み込む際、 元のエクセルセルに書式設定をしている場合に、書式ごと読み込むにはどうしたらいいですか? エクセルセル・・・吉田様(様は書式設定) テキストボックスに読み込んだ場合は、「吉田」のみが読み込まれてしまいます。 よろしくお願いします。  

  • AccessのVBAの記述について

    たびたびお世話になります AccessのVBAで、フォーム上にあるテキストボックス(CadrDate)のデータを同一フォーム内の別のテキストボックスに貼り付ける操作はできるのでしょうか? 出来るのであれば記述文を教えてください。