マクロで A2に実行ボタンを作り、押すとInputBoxがでて、文字を入れて、検索すると、

マクロで A2に実行ボタンを作り、押すとInputBoxがでて、文字を入れて、検索すると、 それと同じ文字が、入っている(シート1の)C2からZ2までデータ (同じように以下C3からZ3。C4からZ4と毎年され行が空白になるまで入っている。 AA2が空白の時、次の行に移る) を行単位で取り出してシート2のC3からZ3に抽出されるマクロを作っていただいたのですが 空欄になるまでマクロ Set toRange = 〇〇.Cells(Rows.Count, 3).End(xlUp).Offset(1, 0) .Range(.Cells(i, 3), .Cells(i, lstCol2)).Copy toRange https://excel-ubara.com/excelvba1/EXCELVBA318.html Excelワークシートにおける表の最終行の取得 表の途中に空欄が不特定に入っている場合は、いったんシートの一番下(シートの最終行) のA列(A1048576)セルに移動してから、Ctrl + ↑とやれば、いいと書かれています。 C3からZ3。C4からZ4と行くに従って、 今は、C30からZ30まで入っているのですが、C27からZ27から、Z28、Z29、Z30は文字が入っているのに 抽出先では、空白になります 理由がわからなくて、教えていただけないでしょうか? lstCol2は変数だと思ったのですが、調べても不明だったので書いています

Visual Basic18閲覧xmlns="http://www.w3.org/2000/svg">25

ベストアンサー

0

どんなソースを書いたのか判らないので、lstcol2に何が入っているのかも不明です。 質問としては不完全です。 Z列が固定なら、 .Range(.Cells(i, 3), .Cells(i, lstCol2)).Copy toRange ↓ .Range(.Cells(i, 3), .Cells(i, 26)).Copy toRange にすれば、C:Zが固定でコピペされます。 判りやすいように、 .Range(.Cells(i, "C"), .Cells(i, "Z")).Copy toRange という書き方もできます。 そういう事じゃないならスルーしてください。

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

Cells(行, 列).の意味が理解できました。 lstCol2を見れば回答があるということですね。

お礼日時:9/26 9:48