Excel VBA 質問スレッド No.751 (解決済)

VBAで差し込み印刷

投稿者 : 困ったやん     投稿日時 : 2022/05/25(Wed) 10:58:33     OS : Windows 10     EXCEL : Excel 2021
VBA初心者です

「データ」シートにある情報を「案内」の該当セルに挿入して
差し込み印刷がしたいです。

以下で実行しようとすると
「nextで指定された変数の参照が不明です」とエラーが出ます。

先輩社員に押し付けられたもので、できないとキレられます・・・
お力添えください・・・

*******************
Sub SSS()

Dim p, t, u


With Sheets("データ")

'差し込みたい列の選択
For Each p In .Range(.Cells(6, 2), .Cells(10, 2).End(xlUp))
For Each t In .Range(.Cells(6, 3), .Cells(10, 2).End(xlUp))
For Each u In .Range(.Cells(6, 4), .Cells(10, 2).End(xlUp))

With Sheets("案内")

.Range("a41") = p.Value
.Range("a40") = t.Value
.Range("a42") = u.Value

.PrintPreview



End With
Next p
Next t
Next u


End Sub

[返信 1] Re : VBAで差し込み印刷
投稿者 : さんこう     投稿日時 : 2022/05/25(Wed) 11:31:44
参考になれば。

https://www.google.com/search?q=next%E3%81%A7%E6%8C%87%E5%AE%9A%E3%81%95%E3%82%8C%E3%81%9F%E5%A4%89%E6%95%B0%E3%81%AE%E5%8F%82%E7%85%A7%E3%81%8C%E4%B8%8D%E6%98%8E%E3%81%A7%E3%81%99

[返信 2] Re : VBAで差し込み印刷
投稿者 : てらてら     投稿日時 : 2022/05/25(Wed) 12:50:26
こんにちは。

Next p
Next t
Next u

ではなく、

Next u
Next t
Next p

でないといけません。
字下げするようにすれば、すぐに気づきますよ。

それと、withの使い方もダメです。
"案内"シートにはこの書き方は使えないので、
With Sheets("案内")はやめにして、

Sheets("案内").Range("a41") = p.Value
Sheets("案内").Range("a40") = t.Value
Sheets("案内").Range("a42") = u.Value

としましょう。

[返信 3] Re : VBAで差し込み印刷
投稿者 : hatena     投稿日時 : 2022/05/25(Wed) 14:49:18
Next の変数はてらてらさんの指摘どおりですね。

Forが入れ子になっている場合は、Nextの変数は内側から外側に記述する必要があります。

コードを書くときにきちんとインデント(字下げ)をつけるようにするとこのようなミスを防げます。

あと、With は入れ子にできますでの、With Sheets("案内") の書き方は間違いではないですね。

ただし、With Sheets("データ") に対応する End With がないのでそこでエラーになりますね。

Sub SSS()
Dim p, t, u

With Sheets("データ")
'差し込みたい列の選択
For Each p In .Range(.Cells(6, 2), .Cells(10, 2).End(xlUp))
For Each t In .Range(.Cells(6, 3), .Cells(10, 3).End(xlUp))
For Each u In .Range(.Cells(6, 4), .Cells(10, 4).End(xlUp))
With Sheets("案内")
.Range("a41") = p.Value
.Range("a40") = t.Value
.Range("a42") = u.Value

.PrintPreview
End With
Next u
Next t
Next p
End With
End Sub

[返信 4] Re : VBAで差し込み印刷
投稿者 : 困ったやん     投稿日時 : 2022/05/25(Wed) 15:28:35
こちらも解決いたしました!

ありがとうございます!

当掲示板について
返信入力フォーム
お 名 前  :
内  容   :
ステータス  : この質問を解決済みにする

認証コード  :
        キャプチャ画像


( 処理日時 : 2022-07-07 12:36:58 )

Page
Top