
下記の表があり、InputBoxで入力するように作成しています。その際に、データを入力がされたら自動でナンバーを振るようにしたいのですが、どのように記述していいのかわからなく・・・
どなたか教えていただければと思います。
下記のコードはNo.が入っている前提のコードです。
Do While ActiveCell.Offset(0, -1).Value <> "" の個所をどのように記述したらいいのでしょうか?
初心者で申し訳ございませんがよろしくお願いいたします。
Sub 自動でナンバー振りたい()
Dim nyuryoku As String
If Range("C5").Value = "" Then
Range("C5").Select
Else
Range("C4").Select
Selection.End(xlDown).Select
ActiveCell.Offset(1, 0).Select
End If
Do While ActiveCell.Offset(0, -1).Value <> ""
nyuryoku = InputBox("日付を入力してください" & Chr(10) & _
"入力を終了する場合にはabcと入力します", , , 200, 200)
If nyuryoku = "abc" Or nyuryoku = "" Then
Exit Do
Else
ActiveCell.Value = nyuryoku
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = InputBox("得意先名を入力してください", , , 200, 200)
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = InputBox("商品名を入力してください", , , 200, 200)
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = InputBox("数量を入力してください", , , 200, 200)
ActiveCell.Offset(1, -3).Select
End If
Loop
Windows("第5章.xlsm:1").Activate
ActiveWindow.Close
ActiveWindow.WindowState = xlMaximized
Range("A1").Select
End Sub

A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
こんにちは
表題への直接の回答ではありませんが、
処理についてVBAで行う合理性が無いように思います
VBA処理中に挟み込むにしても・・どうでしょう?
InputBoxの使い方としても入力値を直接セルに書き込むような場合、
手数がかかるだけのような気がしますね
使い方として(一例)InputBoxの入力値をチェックして変数に代入して値を処理、結果をセルに書き出す・・・ような使い方なら
今回は、関数や入力規則、どうしてもVBAでならシートイベントなどを使うのが良いと思います
表もテーブルで作成した方が何かと便利な気がします
ちなみに
>入力がされたら自動でナンバーを振る・・・のであれば
例の表組の場合
A5セルに(1例) =IF(B5<>"",ROW()-4,"") と入れて下にフィルで良いと思います
事情が御有りなのかもしれませんが、
Excelの機能、関数、VBAを上手く組み合わせて作るのが好ましいと思います
No.1
- 回答日時:
こんばんは
>Do While ActiveCell.Offset(0, -1).Value <> "" の個所を
>どのように記述したらいいのでしょうか?
ループを抜けるのが、ダイアログのキャンセルかabc入力のみとしてよいのなら、無限ループにしてしまえばよいので、
Do While True
としておけば良いでしょう。
>自動でナンバーを振るようにしたいのですが、
処理のどこかで、行番号 - 4( ActiveCell.Row - 4 )をB列に記入すれば良いです。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
【初月無料キャンペーン実施中】オンライン健康相談gooドクター
24時間365日いつでも医師に健康相談できる!詳しくはコチラ>>
-
evcel VBAについて
Visual Basic(VBA)
-
VBAの繰り返し処理について教えてください。
Visual Basic(VBA)
-
Countifよりも早く重複数をカウントする方法ありますか?
Excel(エクセル)
-
4
フレーム内のオプションボタンの選択結果をセルに書き出したい。 図のような預金種目というフレームにオプ
Visual Basic(VBA)
-
5
VBA 別ブックからの転記の高速化について VBA 別ブックからの転記の高速化についてご教授下さい。
Visual Basic(VBA)
-
6
Excel VBA で End Subのところで「型が一致しません」のエラーとなります。
Visual Basic(VBA)
-
7
【VBAで、On Error が効かない】
Visual Basic(VBA)
-
8
エクセルVBAについて
Visual Basic(VBA)
-
9
VBAの改ページ設定について
Visual Basic(VBA)
-
10
マクロVBA 1シートをまとめる 閉じ方 初心者 SOS!
Visual Basic(VBA)
-
11
VBAって、将来的に廃れますか?
Visual Basic(VBA)
-
12
【VBA】Excelで罫線を引きたい
Visual Basic(VBA)
-
13
セルのロックのメッセージが表示されないようにするには
Visual Basic(VBA)
-
14
Application.InputBoxの表示形式
Visual Basic(VBA)
-
15
ユーザーフォームが立ち上がらない
Visual Basic(VBA)
-
16
excelのマクロ実行でブロックされます。
Excel(エクセル)
-
17
VBA 登録ボタンを省略してエンターキーで作業
Visual Basic(VBA)
-
18
この関数と同じ処理をVBAで行うにはどうしたら良いでしょうか? これは、1列の中に同じ値が複数存在し
Visual Basic(VBA)
-
19
エクセルVBAについて
Visual Basic(VBA)
-
20
比較して等しくなかったらセルを赤くする
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
バックスペースによる削除
-
5
このようにnameとdateは必ず入...
-
6
「イ分」・・・フンという文字...
-
7
Pythonについて質問です。 入力...
-
8
アルファベットGの小文字の入力
-
9
Excel-VBAでInputBox+Pulldown...
-
10
初歩的な事だと思います。 Sub...
-
11
複数行の入力を受け取る方法
-
12
DataGridViewの桁数制限に関して
-
13
vbaで同じテキストボックスを繰...
-
14
EXCEL VBA で指定した範囲に入...
-
15
教えて!全角文字「μ」の半角
-
16
HTMLで全角文字のみ入力するに...
-
17
VBAでInputBoxの再入力をさせる...
-
18
エディットボックスの入力制限...
-
19
c#でTextBoxの入力制限
-
20
アイフォン使ってたらちょくち...
おすすめ情報
公式facebook
公式twitter