|    | 
     ▼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 
 
 | 
     
    
   |