VBA100本ノック 33本目:マクロ記録の改修

こちらで公開されている、100本ノックに挑戦。
www.excel-ubara.com
素晴らしい教材を公開いただき、ありがとうございます。

上記リンク先から、問題文を転載。

自分もマクロを覚えたての頃は、全コードに占めるマクロの記録が7~8割を
越えることなんてザラだった。だから今でも、「マクロを見て欲しい」と言わ
れこのようなコードをお見掛けしても、決して否定はしない。多くの人が辿る
道なのだから(賛否両論あり)。

また、このような「撮りたて生コード」をどう調理するかは、その方の習熟度
を測る指標にもなると思う。

ということで、今の私はこんな感じだ。

Sub VBA_100Knock_033()
    Dim Sh As Worksheet
    Set Sh = Sheets("データ")
    
    Dim rMax As Long
        rMax = Sh.Cells(Rows.Count, 1).End(xlUp).Row
    
    Dim TargetRange As Range
    Set TargetRange = Range(Sh.Cells(2, 1), Sh.Cells(rMax, 1)).Resize(, 6)
    
        Application.ScreenUpdating = False
    
        TargetRange.Columns(4) = "=IFERROR(VLOOKUP(RC[-2],マスタ!C[-3]:C[-1],2,FALSE),"""")"
        TargetRange.Columns(5) = "=IFERROR(VLOOKUP(RC[-3],マスタ!C[-4]:C[-2],3,FALSE),"""")"
        TargetRange.Columns(6) = "=RC[-1]*RC[-3]"
    
    ' VLOOKUPの計算結果を値に変更。
        Sh.UsedRange.Value = Sh.UsedRange.Value

        Application.ScreenUpdating = True

        Range("A1").Select
End Sub

ということで、原文よりも行数が増えてしまった。今はこれが精一杯。
※冒頭リンク先の解答例および解説も、ぜひご一読ください。

参考まで。