![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
2021年11月15日に、台帳シートと入力シートの転記に関する質問をし、解決していましたが、新たな問題が発生しました。
現在、入力シートの「転記印刷」ボタンで台帳に転記し、納品書台帳に移動しD2の番号は6に変わりましたが、D12セルに数字が入りません。次の来客時には、D12セル以下、その都度、入力しなければならない状態です。(メッセージ表示:「伝票番号=6は納品書台帳にありません」)
それで、入力シートの転記印刷」ボタンをクリックした時に、D列にもD2セルの番号と同じ、数字が入るようにしたい。
再度、教えて頂きたくお願いいたします。
画像が送れず解りにくいですが、納品書台帳は、B2,C2セルは日付、D2セルは一連番号、E2セルは店コードを手入力し、7列以降に、入力シートからの転記印刷ボタンで、B7C7(日付)、D7(台帳番号=一連番号)、E7(店コード)、G7(店の名前)のデータが転記されます。D7以降に次の数字が順に入りません。
前回、教えて頂いたコード(大文字のところ)を追加したコードです。
Public Sub 転記()
Dim sh1 As Worksheet
Dim sh2 As Worksheet
以下が、セキュリティポリシーで送れませんでしたので、別送します。
No.1ベストアンサー
- 回答日時:
今回の例でいえば、
台帳のD12に6(=D2の値)を設定する処理を追加したいということでしょうか。
もし、そうであれば、
sh1.Cells(2, "D").Value = sh1.Cells(maxrow, "D").Value + 1
sh1.Cells(2, "E").Value = ""
の次の行へ
sh1.Cells(maxrow+1, "D").Value = sh1.Cells(maxrow, "D").Value + 1
を追加してください。
(こちらで動作確認はしていませんので、不具合があれば補足してください)
前回からご教授頂き有難うございます。
今、コードを追加し動作確認いたしました。
D12に確かに表示できました。
これで、台帳記録、納品書等の発行手続きがスムーズにできるようになりました。
大変有難うございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBAコードが作動せず、どこに問題があるのか教えて下さい。 3 2023/06/13 13:20
- Visual Basic(VBA) Changeイベントで複数セルへの貼り付けおよび値削除時に1個目のセルのみエラーになる 3 2022/12/21 09:07
- Excel(エクセル) excelで検索した商品の画像(ネットワーク上の)を表示させたい。 3 2023/06/28 00:32
- Excel(エクセル) 【VBA】PDF出力に任意のファイル名前を付ける方法 3 2023/07/21 10:55
- Visual Basic(VBA) 【VBA】データを入力後に,同一シート内に履歴として転記するVBAコードを教えていただきたいです。 3 2022/11/16 01:37
- Excel(エクセル) ある数値に対して、値を返す数式についてです 2 2022/09/13 22:06
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- Visual Basic(VBA) VBA シート間の転記で、条件の追加コードの書き方について教えて下さい。 13 2023/02/26 09:31
- Visual Basic(VBA) Accessフォームで全レコードを指定のExcelのセルへ転送し印刷する方法について 2 2022/09/08 18:23
- Visual Basic(VBA) 特定の文字を含むシートだけマクロ処理をしたい 1 2023/05/22 01:43
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelの「0」だけ非表示、小数...
-
日付が未入力の際はゼロか、空...
-
エクセルで1月0日と表示される!!
-
(Excel)あるセルに文字を入力...
-
シート参照で変数を使いたい(EX...
-
ExcelでTODAY関数を更新させな...
-
別シートのセルを絶対参照にする
-
エクセルで条件に一致したセル...
-
Excelシートの保護時にデータの...
-
エクセルで別シートからの最大...
-
EXCEL関数でシート名が変わる可...
-
エクセルで20万行あるシート...
-
複数シートの同じセル内容を1シ...
-
エクセルで、加筆修正したセル...
-
excelでハイパーリンクになって...
-
[EXCELマクロ] シートタブに自...
-
エクセルで、勤務表から 日付...
-
=HYPERLINK(VLOOKUPに関して。
-
エクセルで複写のように自動入...
-
エクセルでシート保護をかける...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelの「0」だけ非表示、小数...
-
日付が未入力の際はゼロか、空...
-
エクセルで1月0日と表示される!!
-
エクセルで条件に一致したセル...
-
Rangeメソッドは失敗しました。...
-
(Excel)あるセルに文字を入力...
-
Excelで複数シートの選択セルを...
-
エクセルで複写のように自動入...
-
Excelシートの保護時にデータの...
-
シート参照で変数を使いたい(EX...
-
別シートのセルを絶対参照にする
-
複数シートの同じセル内容を1シ...
-
Excelでスクロールすると文字が...
-
Aというブックの1というシート...
-
エクセルで20万行あるシート...
-
エクセルの文字
-
エクセルで、加筆修正したセル...
-
VBAで変数に関数式の結果をセッ...
-
ExcelでTODAY関数を更新させな...
-
VBAで、セル(Range)のオブジ...
おすすめ情報
追加分2回目です。
Dim maxrow As Long
Dim row As Long
Dim dicT As Object
Dim key As Variant
Set sh1 = Worksheets("納品書台帳")
Set sh2 = Worksheets("入力シート")
Set dicT = CreateObject("Scripting.Dictionary")
maxrow = sh1.Cells(Rows.Count, "D").End(xlUp).row
'伝票番号を記憶
For row = 7 To maxrow
key = sh1.Cells(row, "D").Value
dicT(key) = row
Next
追加3回目
key = sh2.Cells(8, "R").Value
If dicT.exists(key) = False Then
MsgBox ("伝票番号=" & key & "は納品書台帳にありません")
Exit Sub
End If
If sh2.Cells(12, "E").Value = "" Then
MsgBox ("名前が未入力です")
Exit Sub
End If
If sh2.Cells(24, "S").Value = "" Then
MsgBox ("金額が未入力です")
追加4回目です。
Exit Sub
End If
row = dicT(key)
sh1.Cells(row, "G").Value = sh2.Cells(12, "E").Value '名前
sh1.Cells(row, "H").Value = sh2.Cells(24, "S").Value '金額
MsgBox ("転記完了印刷します")
Call 印刷 'Sub印刷()を呼び出す。
sh1.Cells(2, "D").Value = sh1.Cells(maxrow, "D").Value + 1
sh1.Cells(2, "E").Value = ""
End Sub
台帳の画像です。
入力シートの画像です。