Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


21945 / 76734 ←次へ | 前へ→

【60175】Re:数字キーだけで,セルに数値を入力
発言  kanabun  - 09/2/2(月) 0:13 -

引用なし
パスワード
   ▼いちご さん:
こんばんは。

> 数字キーで使って,セルに数値を入力したいと思っています。
> このとき,数字キー後にEnterキーするのが普通なのですが,
> Enterキーを押さずに,入力できればと思っています。
> 入力後,セルを下に移動して,次の値を入れられるようになると,
> 入力にかかる時間が短縮できるのでなないかと思っています。
> また,文字入力をしなければならない項目もあるので,
> 入力モードが切り替えられるといいと思っています。
> こしたことは,無理なのでしょうか?

いい案が出るまでのつなぎですが、よろしければこんな方法
試してみてください。

対象シートに コントロールツールボックス から
TextBoxをひとつシートに貼り付け、高さをだいたいセルと同じ高さに、
また 横幅を高さと同じくらいにします。
(TextBoxのBackColor は 黄色とか 目立つ色の方がいいかもしれません)

そのTextBoxを右クリックするとメニューが出てきます。
メニューの「コードの表示」を選ぶと、
Private Sub TextBox1_Change()

End Sub
というプロシージャが作られますから、このなかに以下のコードを
コピーして、
--------------
Option Explicit '変数の宣言を強制する (この宣言は自動で入らなければ
VBEメニューの[ツール]-[オプション]-[編集]で、入るようにチェックを
いれておいてください。)

Private Sub TextBox1_Change()
 Dim i As Long
 
 With TextBox1
   If Len(.Text) = 0 Then Exit Sub
   i = Val(.Text)
   Select Case i
    Case 1 To 5
      With ActiveCell
        .Value = i
        .Offset(1).Select
      End With
   End Select
   .Text = ""
   .Activate
 End With
End Sub

また、コードウィンドウの左上のドロップダウンから
Worksheet
を選ぶと、↓のプロシージャが出来ますから、
そこに下のコードをコピペしてみてください。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
 With TextBox1
   .Left = Target.Left
   .Top = Target.Top
 End With
End Sub

-----------
以上2つのシートプロシージャが書き終わったら、
VBEメニューの「デバッグ」-「VBAプロジェクトのコンパイル」で
構文チェックをしてください。エラーがでたら、修正します。

無事コンパイルが終わったら、シートに戻って(デザインモードを
終了し)最初の入力セルを選択してください。
このとき、TextBoxがそのセルの左側に移動するはずです。
最初だけは、TextBoxをマウスでActiveにしてから、
数字の 1〜5 を入力してください。
数字1文字を入れるとその数字がセルに転記され、ActiveCellが
1つ下に移動すれば成功です。

> また,文字入力をしなければならない項目もあるので
そのときは、セルのほうへ直接入力してください。

ま、一案ということで。
では(^^
3 hits

【60174】数字キーだけで,セルに数値を入力 いちご 09/2/1(日) 20:57 質問
【60175】Re:数字キーだけで,セルに数値を入力 kanabun 09/2/2(月) 0:13 発言
【60185】Re:数字キーだけで,セルに数値を入力 いちご 09/2/2(月) 20:30 お礼
【60186】Re:数字キーだけで,セルに数値を入力 kanabun 09/2/2(月) 20:42 発言
【60187】Re:数字キーだけで,セルに数値を入力 いちご 09/2/3(火) 4:18 お礼
【60188】Re:数字キーだけで,セルに数値を入力 kanabun 09/2/3(火) 10:02 発言
【60197】Re:数字キーだけで,セルに数値を入力 いちご 09/2/3(火) 20:44 質問
【60199】Re:数字キーだけで,セルに数値を入力 kanabun 09/2/4(水) 0:40 発言
【60217】Re:数字キーだけで,セルに数値を入力 いちご 09/2/4(水) 21:20 お礼
【60218】Re:数字キーだけで,セルに数値を入力 kanabun 09/2/4(水) 21:46 発言
【60246】Re:数字キーだけで,セルに数値を入力 いちご 09/2/5(木) 20:04 お礼

21945 / 76734 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free