プロが教える店舗&オフィスのセキュリティ対策術

VBA 主sheetの最終セルの下に別sheetにあるデータのABERAGE IF関数を挿入する

主sheet:労働sheet
D列(D5~D16)の最終セルの下にABERAGE IF関数を挿入したいです。
別sheet:CSVsheet
平均対象範囲はE列、条件範囲はA列
条件は"E4*"です。

質問者からの補足コメント

  • スミマセン( ノД`)
    補足します。

    E列の範囲 E1:E200
    A列の範囲 A1:A200

      補足日時:2016/08/22 12:29

A 回答 (3件)

書き方の好みだけなのですが、こんな感じでいかがでしょう。



Sub sample()
With Sheets("Sheet1").Cells(Rows.Count, "D").End(xlUp).Offset(1)
.Formula = "=AVERAGEIF(CSVsheet!$E:$E,""E4*"",CSVsheet!$A:$A)"
End With
End Sub
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
私のやり方が悪いのか動かないです(ノω`)

お礼日時:2016/08/22 15:36

範囲部分は勝手に書き換えろ!



Sub WK()
Dim END1 As Long
Dim Sh1 As Worksheet
Set Sh1 = Worksheets("sheet1")
END1 = Sh1.Range("D1").End(xlDown).Row '最終行取得

Sh1.Range("D" & END1+1).Value = "=AVERAGEIF(CSVsheet!$E$1:$E$5,""E4*"",CSVsheet!$A$1:$A$4)"
Application.StatusBar = False
End Sub
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます!
その都度の最終行を取得するにはどうしたらいいでしょうか?

お礼日時:2016/08/22 15:33

>>平均対象範囲はE列、条件範囲はA列


で、E列A列の範囲は?
E1:E10とかA1:A10とかの範囲は??
    • good
    • 0

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