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

差し込み印刷 2

投稿者 : 困ったやん     投稿日時 : 2022/05/25(Wed) 14:01:06     OS : Windows 10     EXCEL : Excel 2021
午前中に差し込み印刷で泣きついた者です。

有識者に知恵を貸していただきどうにか以下のようにまとめましたが、

名前、コード、所属のデータがあるだけ組み合わさり、
各3つサンプルデータを入れていますが、3×3×3=27通りのデータがでてきます。

お手上げです。
先輩に殺されてきます・・・

Sub SSS()

Dim p, t, u

'p=コード
't=氏名
'u=所属


With Sheets("データ")

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


With Sheets("案内")

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


.PrintPreview


End With
Next u, t, p


End With
End Sub

[返信 1] Re : 差し込み印刷 2
投稿者 : さんこう     投稿日時 : 2022/05/25(Wed) 14:54:23
雑な修正方法です。

.PrintPreview

If p.Row = t.Row And p.Row = u.Row Then .PrintPreview

[返信 2] Re : 差し込み印刷 2
投稿者 : hatena     投稿日時 : 2022/05/25(Wed) 15:00:03
Forループで3重の入れ子にしているので当然そうなりますね。


データシートにデータは3行あって、出力は3つでいいのならループを入れ子にする必要はないです。

B列でループして、OffsetでC列, E列を参照するようにすればいいでしょう。


Sub SSS()
Dim p

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

.PrintPreview
End With
Next p
End With
End Sub

[返信 3] Re : 差し込み印刷 2
投稿者 : 困ったやん     投稿日時 : 2022/05/25(Wed) 15:26:50
ありがとうございます!!!

解決しました!!!



■[返信 2] hatenaさん(2022-05-25 15:00:03)の記事
> Forループで3重の入れ子にしているので当然そうなりますね。


> データシートにデータは3行あって、出力は3つでいいのならループを入れ子にする必要はないです。

> B列でループして、OffsetでC列, E列を参照するようにすればいいでしょう。


> Sub SSS()
> Dim p

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

> .PrintPreview
> End With
> Next p
> End With
> End Sub

[返信 4] Re : 差し込み印刷 2
投稿者 : 困ったやん     投稿日時 : 2022/05/25(Wed) 15:27:55
皆様ありがとうございます!

これで先輩にキレ散らかされないですみます・・・!

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

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


( 処理日時 : 2022-07-07 13:43:54 )

Page
Top