excel - 工作表函数 Sum-if 导致错误类型不匹配
问题描述
我正在遍历工作表以汇总“C”和“D”的数量。
每个标签在 M 列中都有金额,在 N 列中它们是贷方还是借方,用字母 C 或 D 表示。
首先,我将字母 C 和 D 放在空白单元格上,并尝试将这两个数量放在它们旁边。
我在 sumif 行收到类型不匹配错误,并且整行都突出显示。
起初我以为可能是 ws = Worksheets(I) 导致了问题,所以我用 Worksheets(I) 换掉了它们,但它仍然不起作用。
Sub Sumiftabs()
Dim Filepath As String
Dim UIGFile As Workbook
Dim Column As String
Dim Month As String
Dim Year As Integer
Dim I As Long
Dim TY As Integer
Dim TYLetter As String
Dim T As Long
Dim TreatyYear As Long
Dim WS_Count As Integer
Dim ws As Worksheet
Application.ScreenUpdating = False
TreatyYear = Sheets("Control").Range("B7").Value
'On Error Resume Next
For T = TreatyYear To 16 Step -1
TYLetter = WorksheetFunction.VLookup(T, Workbooks("Separate tabs.xlsm").Sheets("Control").Range("H:I"), 2, False)
TY = Sheets("Control").Range("B7").Value
Month = Sheets("Control").Range("B5").Value
Year = Sheets("Control").Range("B4").Value
Filepath = Sheets("Control").Range("B2").Value
Set UIGFile = Workbooks.Open("K:\Ayoon\UIG\" & Year & "\" & Month & "\UIG_NSA_MonYear_TY" & T & ".xls")
WS_Count = UIGFile.Worksheets.Count
For I = WS_Count To 1 Step -1
Set ws = Worksheets(I)
'Direct Premium
UIGFile.Worksheets(I).Range("S4").Value = "C"
UIGFile.Worksheets(I).Range("S5").Value = "D"
UIGFile.Worksheets(I).Range("T4").Value = _
Application.WorksheetFunction.SumIf(ws.Range("N:N"), ws.Range("S:S"), ws.Range("M:M"))
UIGFile.Worksheets(I).Range("T5").Value = _
Application.WorksheetFunction.SumIf(ws.Range("N:N"), ws.Range("S:S"), ws.Range("M:M"))
Next I
UIGFile.Close savechanges:=True
Next T
Application.ScreenUpdating = True
End Sub
解决方案
您的 SUMIF 看起来不正确。
例如试试这个:
UIGFile.Worksheets(I).Range("T4").Value = _
Application.WorksheetFunction.SumIf(ws.Range("N:N"), "C", ws.Range("M:M"))
推荐阅读
- typescript - 正确输入 vuex getter 的 getters 参数
- sql-server - 如果在 SQL Server 中没有找到记录,则返回 null
- github-actions - 手动触发的 Github Action 总是被跳过
- django - 在 Django 中使用基于类的视图子类从 ajax 重定向路由
- python - 动态访问嵌套列表python中的元素
- python - 在 Python 中将字符串转换为绑定方法
- reactjs - Reactjs 从父级更新状态来自子级,而无需重新渲染父级
- apache-kafka - 何时增加日志清理线程?
- python - (Python,Opencv)查找图像中的像素数
- django - 如何在使用 django rest 框架的简单 jwt 身份验证中验证访问令牌并在过期时将用户重定向到 refreshtoen 视图