Excel 基于多个条件和文本颜色的Sumif
我使用宏来总结特定债务人的价值。它目前运行良好,但我需要添加另一个标准Excel 基于多个条件和文本颜色的Sumif,excel,vba,worksheet-function,Excel,Vba,Worksheet Function,我使用宏来总结特定债务人的价值。它目前运行良好,但我需要添加另一个标准 Range("DebtorList_Payed")=Application.SumIf(Range("InvoiceList_Table_ItmCode"), _ Range("Debtor_list_Debtors"), Range("InvoiceList_Price")) 我在发票列表工作表上有另一个范围,称为“范围”(“发票列表”\u Payed”),在这一行中有“现金”、“信用”、“自定义现金”和“自定义信用
Range("DebtorList_Payed")=Application.SumIf(Range("InvoiceList_Table_ItmCode"), _
Range("Debtor_list_Debtors"), Range("InvoiceList_Price"))
我在发票列表工作表上有另一个范围,称为“范围”(“发票列表”\u Payed”),在这一行中有“现金”、“信用”、“自定义现金”和“自定义信用”
“现金”和(自定义)现金行中的文本为绿色
“信用”和(自定义)信用”行中的文本为红色
使用现有宏,我需要它只对相应范围(“InvoiceList_Payed”)中文本颜色为绿色的行求和
比如说
Range("DebtorList_Payed")=Application.SumIf(Range("InvoiceList_Table_ItmCode"), _
Range("Debtor_list_Debtors"), Range("InvoiceList_Price") = _
Range("InvoiceList_Payed")> "Green"))
如果您使用的是Excel 2007或更高版本,则可以使用SUMIFS函数,如果您使用的是早期版本,则可以嵌套SUM和If函数。真正的问题是无法从工作表函数中获取单元格的颜色。如果且仅当单元格上的格式设置为绿色为正,红色为负(反之亦然),则可以使用单元格(“颜色”,REF)功能 当然,使用标准VBA函数/属性(如RGB)很容易做到这一点 您也可以直接触发“现金”一词,因为这两个绿色行都有相同之处 例如:
SUMIFS(Range("InvoiceList_Payed"), Range("InvoiceList_Table_ItmCode"), _
Range("Debtor_list_Debtors"), Range("InvoiceList_Payed"), "*CASH*")
我使用的是Excel 2010,那么我该如何做到这一点呢?@James,这取决于我指的是你想要使用的方法。我将在一个示例中进行编辑,但我不能完全确定您提出的确切细节问题。请注意参数从SUMIF到SUMIFS的变化顺序。非常感谢Lance,我的几个宏的一个主要帮助是“现金”而不是“现金”,因此它的作用是包含而不是具体的,解决了这个问题,再次非常感谢,谢谢。