VBA初心者です。 Excelにてプルダウンで選択した整理番号の申請者の情報を「ひな形」シートの該当する項目に入力し印刷したいと考え、マクロを組もうとしています。

画像

Excel | Visual Basic86閲覧xmlns="http://www.w3.org/2000/svg">250

ベストアンサー

0

ただプルダウンを選択した時点で反映される訳ではないので、リスト内容を確認して印刷したいのであればVBAじゃなくワークシートで数式を入れておいた方が早いですね。

ThanksImg質問者からのお礼コメント

ご回答いただきありがとうございます。 どなたにベストアンサーを付けようか迷いましたがあなた様に付けさせていただきました。またまだ知識不足ですが少しずつ知識を付けていきたいと思います!

お礼日時:5/19 19:23

その他の回答(2件)

1

こんにちは。 Set nowCells = Cells(2, "A").Offset(0, Cells(2, "D").Value) は Set nowCells = Cells(2, "A").Offset(0, ThisWorkbook.Sheets("ひな形").Range("D2").Value) になります。 正しいオフセットの値が来ていな理由が、「見ているセル」が間違っていた ということです あと、データのあるブックをアクティブにした状態で、マクロを 実行しないと、正しく転記しません。 ブックが複数あって、データのブックを指定しないコードだと マクロの操作から注意したら、動きます

1人がナイス!しています

1

>Dim nowCells >Set nowCells = Cells(2, "A").Offset(0, Cells(2, "D").Value) これってとおらないんじゃないですかね セルというオブジェクトをいれてるわけではなく、セルの値をいれたいんですよね? 以下なら通るはずです。 Dim nowCells nowCells = Cells(2, "A").Offset(0, Cells(2, "D").Value)

1人がナイス!しています

ただこれが何をしたいのかがよくわからない nowCells = Cells(2, "A").Offset(0, Cells(2, "D").Value) 多分コレで nowCells = Cells(2, "A").address ThisWorkbook.Sheets("ひな形").range("B3") = range(nowCells).Offset(1, 1) ThisWorkbook.Sheets("ひな形").range("B4") = range(nowCells).Offset(1, 2) ThisWorkbook.Sheets("ひな形").range("B5") = range(nowCells).Offset(1, 3) ThisWorkbook.Sheets("ひな形").range("B6") = range(nowCells).Offset(1, 4)