【初月無料キャンペーン中】gooドクター

エクセルマクロ初心者です。
以下図のように、項目1(A列)の書式を文字列にし、
項目2(B列)に表示させたいと思っています。

手順としては以下の通り考えていますが、②の構文の記載方法がわかりません。
ご存じでしたら、教えていただきたいです。

①項目2の頭行(B2)に「=VALUE」関数を挿入し、参照値を項目1の頭行(A2)とする
②項目1(A列)の参照値がある最終行まで、項目2(B列)数式をコピーする

記録とネットで調べて以下のように構文を記載してみましたが、
最終行までのコピーができませんでした。
どなたかご存じでしたら、ご教授いただけましたら幸いです。


Range("B2").Select
Dim i As Long
i = Range("A" & Rows.Count).End(xlUp).Row
ActiveCell.FormulaR1C1 = "=VALUE(RC[-1])"
Range("B2" & i).FillDown

「エクセルマクロにて最終行まで数式をコピー」の質問画像
gooドクター

A 回答 (2件)

こんにちは



セル範囲に対して、Range.Formla等を設定すれば、フィルコピーの必要はなくなります。

Range(Cells(2, 2), Cells(Rows.Count, 2).End(xlUp))FormulaR1C1 = "=VALUE(RC[-1])"

とか。
    • good
    • 0

以下ではいかがでしょうか?



Range("B2").Select
Dim i As Long
i = Range("A" & Rows.Count).End(xlUp).Row
ActiveCell.FormulaR1C1 = "=VALUE(RC[-1])"
Range("B2:B" & i).FillDown
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

gooドクター

このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング