Board logo

標題: [發問] sumif公式在VBA中無法執行 [打印本頁]

作者: voyageellen    時間: 2013-5-23 00:34     標題: sumif公式在VBA中無法執行

請教各位高手
因為資料量不固定,想用變數代入sumif公式
在使用sumif公式時如出現"執行階段錯誤13"時要如何除錯?
初學VBA,請各位高手不吝賜教,謝謝!
作者: Hsieh    時間: 2013-5-23 08:47

回復 1# voyageellen
  1. Sub Mysumif()
  2. Dim abc1 As String, abc2 As String
  3.   Cells.Find(What:="代號").Offset(1, 0).Activate
  4.     a = ActiveCell.Row
  5.   
  6.   ActiveCell.End(xlDown).Select
  7.     c = ActiveCell.Row
  8.   
  9.   Cells.Find(What:="代號").Offset(1, 0).Activate
  10.     p = ActiveCell.Cells.Column
  11.   
  12.    abc1 = Range(Cells(a, p), Cells(c, p)).Address
  13.   
  14.    abc2 = Range(Cells(a, p + 1), Cells(c, p + 1)).Address
  15.   
  16.   Range("D1").Formula = "=sumif(" & abc1 & ",""BI""," & abc2 & ")"
  17. End Su
複製代碼

作者: oobird    時間: 2013-5-23 08:52

本帖最後由 oobird 於 2013-5-23 09:00 編輯

用vba寫入公式要這樣:
Sub sumif()
    Dim abc1$, abc2$
    abc1 = Cells.Find("代號").Offset(1, 0).Address & ":" & Cells.Find("代號").Offset(1, 0).End(xlDown).Address
    abc2 = Cells.Find("值").Offset(1, 0).Address & ":" & Cells.Find("值").Offset(1, 0).End(xlDown).Address
    Range("D1") = "=sumif(" & abc1 & ",""BI""," & abc2 & ")"
End Sub
作者: voyageellen    時間: 2013-5-23 17:01

非常感謝Hsieh及oobird的指導
解決困擾我許久的問題也讓我學得正確的觀念




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)