| 
    
     |  | ▼saya さん: 
 こんにちは
 このような時のは、同じループ処理でも、For/Nextを使うと便利です。
 できるだけ、アップされたコードのイメージをくずさないように書いてみました。
 もっと、いろいろな書き方もできますし、さらに、C列、E列の値が数値じゃなかった場合の対処
 あるいは、事前にD列の領域をクリアしておいた方がいいけど・・・
 等々のところは手を抜いています。
 
 Sub Macro1_1()
 
 Dim intDataCnt As Long
 Dim maxRow As Long
 
 maxRow = Range("C" & Rows.Count).End(xlUp).Row   'C列データ最終行番号
 
 For intDataCnt = 2 To maxRow  '2行目から最終行までループ処理
 
 If Range("C" & intDataCnt).Value <> "" Then   '空白じゃないときの単価計算を実行
 
 Range("D" & intDataCnt).Formula = Range("E" & intDataCnt).Value / Range("C" & intDataCnt).Value
 
 End If
 
 Next
 
 End Sub
 
 |  |