2015-03-02 130 views
1

我有幾張數據,其中需要根據其他列中的條件找到最高和最低日期。 我已經定義了這些其他列的範圍,並希望插入公式與VBA,但我不斷收到438錯誤「對象不支持此屬性或方法。VBA - 插入maxIF公式

什麼是錯的任何線索,下面是提取我的碼 - 當我調試它是在式問題是

Dim emp As Range 
Set emp = Range("R5", ActiveCell.End(xlDown)) 
Dim epidno As Range 
Set epidno = Range("B5").End(xlDown) 
Dim jobtype As Range 
Set jobtype = Range("D5", Selection.End(xlDown)) 
Dim jobdate As Range 
Set jobdate = Range("J5", Selection.End(xlDown)) 

Dim datecell As Range 
For Each datecell In Range("R5", ActiveCell.End(xlDown).End(xlDown).End(xlUp)) 
datecell.Offset(0, 1).Formula.Cell.FormulaR1C1 = "=MIN(IF(" + jobtype.adress + " =""TECHNICIAN"",IF(" + epidno.adress + "=RC[-1]," + jobdate.adress + ",""""),""""))" 

回答

1
"=MIN(IF(" + jobtype.address + " =""TECHNICIAN"",IF(" + epidno.address + "=RC[-1]," + jobdate.address + ",""""),""""))" 

有一系列的沒有.adress屬性,有一個.Address屬性(2 D'秒,2秒的)

+0

感謝。 ,那有點令人尷尬。 - 但是現在我在同一行上得到一個對象所需的錯誤:/ – rasmusb 2015-03-03 08:19:07

+0

我看到了這個,但我認爲你可能已經在代碼中清除了它。您需要清楚地將代碼第一部分的範圍分配給所需的工作表,並正確實例化它們。因此,首先在Dim之後添加一行,以表示Set emp =新範圍(ect)。然後改變你當前的設置行來說:Set emp = Thisworkbook.Sheets('somesheetname).Range('your_range_info) – cronos2546 2015-03-03 21:04:00