- 締切済み
エクセルの複数シートで支払調書を作成したい 2
http://oshiete1.goo.ne.jp/qa2525609.html の続きです・・・ リストのシートをを参照させて、別シートの支払調書にデータが 全部入るような感じで作成したいと思っています。 リスト A列 B列 C列 1行 名前 住所 支払い総額・源泉税額(2行目) 2行 鈴木 千葉県・・ 1,000 3行 100 4行 山田 東京都… 1,000 5行 100 支払調書 G4:住所 G5:名前 I7:支払い総額 M7:源泉税額 作成したマクロの一部です。 記載していない箇所は前回のものを使わせていただきました。 For Each R In S.Range("A2", S.Range("A2").End(xlDown)) With Worksheets("支払調書") .Range("G5").Value = R.Value .Range("G4").Value = R.Offset(0, 2).Value .Range("I7").Value = R.Offset(0, 15).Value .Range("M7").Value = R.Offset(1, 15).Value 前回のものをそのまま使わせて頂き、作ってみたのですが 支払調書のM7のセルに源泉税のデータが入りません。 どのように直せばいいのでしょうか。 教えてください!
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- zap35
- ベストアンサー率44% (1383/3079)
オブジェクトSはシートのようですね。 >Set S = Worksheets("株主データ") Rは"株主データ"シートのA列のセルですから .Range("I7").Value = R.Offset(0, 15).Value .Range("M7").Value = R.Offset(1, 15).Value では"株主データ"シートのP列の値をセットすることになります。 (A列の15列右側はP列) A列 B列 C列 1行 名前 住所 支払い総額・源泉税額(2行目) ならば .Range("G4").Value = R.Offset(0, 1).Value .Range("I7").Value = R.Offset(0, 2).Value .Range("M7").Value = R.Offset(1, 2).Value ではありませんか?
補足
zap35さんありがとうございます。 あっ すみません A列 B列 C列 1行 名前 住所 支払い総額・源泉税額(2行目) 間違ってました。 A列 B列 P列 1行 名前 住所 支払い総額・源泉税額(2行目) です。すみません。 見直してみましたが、源泉税額が0になってしまいます。 どうしてなのでしょう。 よろしくお願い致します。