我是否可以选择,例如,在ComboBox1中开始日期06/10/2014,在ComboBox2中结束6/20/2014。当我按下计算时,Excel会在这些日期之间选择行并在Sheet2中收集它们,在A1中选择了多少天,在B1中选择了总数,依此类推。这是我用于ComboBoxes的代码:
`Private Sub UserForm_Initialize()
Set Sheet = Worksheets("Sheet1")
`With Sheet
`ComboBox1.List = .Range("A2", .Range("A" & Rows.Count).End(xlUp)).Value
`ComboBox2.List = .Range("A2", .Range("A" & Rows.Count).End(xlUp)).Value
`End With
End Sub
答案 0 :(得分:0)
将选定日期保存到Sheet2上的某些单元格中,然后使用带有这些日期的Excel SUMIFS和COUNTIFS公式来获取结果。这个解决方案对你有用吗?
答案 1 :(得分:0)
这不会按原样运作,但希望它能让您了解实现结果的一种方法。
确定所选项目对应的行
Row1 = CombBox1.ListIndex + 2 ' ComboBoxes have zero-based index, and your data has headers. +2 to negate these
Row2 = ComboBox2.ListIndex + 2 ' Same again..
计算行计数
RowCount = Row2 - Row1
对值进行求和(这可能是一种非常糟糕的方法,但不能让WorksheetFunctions为我工作)
Sum = 0
R = Row1
Do
Sum = Sum + Sheet.Cells(R,2).Value2
R = R + 1
If R > Row2 Then Exit Do
Loop