エクセル2000のマクロを使って納品書を自動出力したいと思っています。
下のように、一覧表に数値を入力してからそれをもとに納品書を出力する、というものです。
【シート1(一覧表)の内容】
烏龍茶 ビール 日本酒
A商事 3 10
B商事 5 1
C商事 2
【シート2(納品書)の内容】
A商事 御中
「烏龍茶」 3ケース
例えば、「A商事」向けに「烏龍茶」と「ビール」の納品書を1部ずつ印刷します。
過去ログもいろいろ調べてみたのですが、なかなか良いヒントが得られませんでしたのでご教授よろしくお願いします。
No.1ベストアンサー
- 回答日時:
マクロは、次の通り。
Sub test()
For i = 2 To 4
For j = 2 To 4
Sheets("sheet1").Select
If Cells(i, j) <> "" Then
Sheets("sheet2").Cells(1, 1) = Cells(i, 1) & "御中"
Sheets("sheet2").Cells(3, 1) = "「" & Cells(1, j) & "」"
Sheets("sheet2").Cells(3, 2) = Cells(i, j) & "ケース"
Sheets("sheet2").Select
Worksheets.Print
End If
Next
Next
End Sub
ありがとうございました。まさにこれです!
思い通りに実現することができました。
一つひとつの意味も大体解り、自身の業務向けにアレンジしているところです。
No.2
- 回答日時:
例 データ
Sheet1 A1:D4
納品先 商品烏龍茶ビール日本酒
A商事310
B商事 51
C商事2
ーーー
Sheet2
12月分納品書A1,B1,C1
下記の通り納品しますB2
C商事御中A3,B3
空白行
商品名数量単価金額 B5からE5
烏龍茶2 B6-E6
Sheet2のA1は=MONTH(NOW())を設定してます。
ーーーーー
標準モジュールに
Sub test01()
Dim sh1 As Worksheet
Dim sh2 As Worksheet
Set sh1 = Worksheets("Sheet1")
Set sh2 = Worksheets("Sheet2")
'------
For i = 2 To sh1.Range("A65536").End(xlUp).Row
For j = 2 To 4
If sh1.Cells(i, j) <> "" Then
sh2.Cells(3, "A") = sh1.Cells(i, "A") 'A2会社名
sh2.Cells(6, "B") = sh1.Cells(1, "B") 'B5品名
sh2.Cells(6, "C") = sh1.Cells(i, j) 'C5数量
sh2.Cells(6, "D") = sh1.Cells(i, "F") 'D5単価
sh2.Cells(6, "E") = sh2.Cells(6, "C") * sh2.Cells(6, "D") 'E5金額
'--印刷
sh2.Range("A1:F10").PrintOut
'---クリア(会社名以外)
sh2.Cells(6, "B") = "" 'B5
sh2.Cells(6, "C") = "" 'C5
sh2.Cells(6, "D") = "" 'D5
sh2.Cells(6, "E") = "" 'E5
End If
Next j '次列へ行き繰り返し
'----クリア(変動セル全て)
sh2.Cells(2, "A") = "" 'A2
sh2.Cells(6, "B") = "" 'B5
sh2.Cells(6, "C") = "" 'C5
sh2.Cells(6, "D") = "" 'D5
sh2.Cells(6, "E") = "" 'E5
Next i '次行へ行き繰り返し
End Sub
(行が変わる時の、後半クリアC,D,E列は不要かも)
ーー
とりあえず、上記簡単データでテストしてみてください。
5枚シートが印刷され出てくるはず。
ーーー
(チューニング)
まづSheet2の印刷項目が本番ではどうなるか決めて、テストの
コードのどの部分に影響する(当然追加もある)か考えること。
Sheet2の不動文字(見出し、罫線、項目見出し)の内容、位置
フォントや書式(色、サイズ、種類、配置)など手作業かVBAで設定のこと。
変動セルの数量セルと得意先名セルは表示形式を手作業かVBAで設定のこと。フォント、行高、列幅、罫線なども同じ。
これらのコードは操作をして、マクロの記録をとればわかります。
ページ設定についても、マクロの結果の該当部分を、本件向きに適当に修正してください。(上記コードには、全く含めていません)
印刷範囲はSheet2が完成すれば自ずと決まる。
Sheet1が上例と変わるとどこが変わるか、じっくり考えてください。
ーーー
しかし、単価のない納品書など許されるの?
単価が得意先別に品物別に決まるなら、事ですぞ。
本格的なACCESSでも使う勉強をしてください。
その点、判らないので、とりあえず上の例では、ほったらかしています。
一般に仕事に関連した、この程度のものをエクセルVBAで作るのは
余程VBAのベテランでないと難しいのでは。
アクセスを使うのが適当と思うが、これも難物。
分かりやすい説明ありがとうございます!
実は納品書ではないのです。ごめんなさい。
FAXの送付状のような書類を作成したいと思っていたのです。
書類が「A商事」向けに何件、「B商事」向けに何件という内容ですが、ネット上のサンプルを見て納付書がイメージに近いと思い、質問させて頂いた次第です。
これを機にいろいろと勉強していきたいので、よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 並べ替え、ソートの構文がわからない。 お世話になります。VBA超初心者です。 エクセルでワークシート 2 2023/06/28 21:00
- Excel(エクセル) エクセルの条件付き書式 個人シートを参照して集計シートに色付けしたい 1 2023/06/22 00:39
- Excel(エクセル) 製品番号での整列と、検索に関して 3 2023/06/28 19:20
- 消費税 消費税の納税額の計算 1 2023/02/19 18:12
- Excel(エクセル) 【条件付き書式】countifsで複数条件を満たしたセルを赤くする方法 2 2023/02/09 23:53
- その他(Microsoft Office) Excelで総数量を変動させたい 2 2022/11/04 23:49
- Excel(エクセル) 【エクセル関数】複数条件に該当する場合、別の列の数値を合算する。 9 2022/07/09 08:46
- Excel(エクセル) excelで検索した商品の画像(ネットワーク上の)を表示させたい。 3 2023/06/28 00:32
- Amazon アマゾン 7 2022/06/11 11:03
- Visual Basic(VBA) 別シートのデータを参照して値を入れたい。 まとめデータシートのC列D列の値を商品一覧シートのコードが 7 2022/08/17 13:20
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel で行を指定回数だけコピ...
-
エクセルVBAで実行時エラー...
-
VBA:同じ文字列データの比...
-
マクロを簡潔にしたいので教え...
-
VBAで複数シート選択
-
エクセルVBAについて
-
EXCELマクロで全シート対...
-
【WORD差し込み印刷】複数レコ...
-
シャープのアクオス sh-m25 を...
-
【VBA】UserForm1の中で使うワ...
-
Excel VBA インデックスの境...
-
VBAで作成する勤務表の合計を求...
-
Webクエリで困っています
-
VBA 最終行取得からの繰り返し貼付
-
excelの差込印刷で可視セルだけ...
-
SH704iに音楽を入れる方法を教...
-
パソコンからiPhoneに音楽を入...
-
SH906iTV SDを使って音楽を聴...
-
エラー出ているHDDからのデータ...
-
SH904iでiTunesの音楽を聴...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel で行を指定回数だけコピ...
-
エクセルVBA 別シートの複数の...
-
excelの差込印刷で可視セルだけ...
-
Excel VBA インデックスの境...
-
シャープのアクオス sh-m25 を...
-
VBA:同じ文字列データの比...
-
エクセル:VBAで月変わりで、自...
-
VBA別シートの最終行の下行へ貼...
-
エクセルVBAで 2種のリストを...
-
エクセルVBAで SendKeys "{TAB}"
-
VBAで条件が一致する行のデータ...
-
Excel VBAでシート内全体に非表...
-
歯抜けの時間を埋めて行の挿入
-
Excelマクロ データが上書きさ...
-
VBA 貼付先範囲(行)がいっぱ...
-
【WORD差し込み印刷】複数レコ...
-
EXCELマクロで全シート対...
-
エクセルVBAでの日付順のデ...
-
エクセル シート保護後コメン...
-
ノートパソコン 2in1について i...
おすすめ情報