質問: シート1のA列には =TEXT(シート2のA1 , "0000!/00!/00") * 1 このように関数が入っていて、シート1のA列は ”9/23” の様に 日付表示になっています。 60行目ぐらいまで同じ関数で、シート2のデータ量によっては 途中でエラーになるためIFERROR関数で空白を表示しています。 マクロでシート1の最終行まで選択するマクロは出来ますか? 空白を指定してみたのですが、うまくいきませんでした。
回答: こんなマクロはどうでしょうか。 Sheet1のA1セルには以下の数式が入力され、 =IFERROR(TEXT(Sheet2!A1,"0000!/00!/00")*1,"") この数式が下方向にコピーされているものとします。 Sub sample() Dim LAST_ROW As Long, rng As Range For Each rng In Worksheets("Sheet2").Columns("A:A").SpecialCells(xlCellTypeConstants, xlNumbers) If Worksheets("Sheet1").Range("A" & rng.Row) <> "" Then LAST_ROW = rng.Row End If Next Worksheets("Sheet1").Activate Columns("A:A").SpecialCells(xlCellTypeFormulas, xlNumbers).Select MsgBox "最終セルのアドレスは A" & LAST_ROW & " です。" End Sub