我正在尝试创建一个宏来对行进行分组并汇总它们在列中的项的数量,我做到了,它可以正常工作,但是经过几行后它就会崩溃并显示
错误13:键入不匹配。
当我打开代码时,它会突出显示此行
stringb = Cells(cont2, 7)
代码是这样的:
Sub Juntarfilas()
Dim Av1 As Double
Dim cont As Long
Dim cont2 As Long
Dim numcol As Integer
Dim comp1 As Integer
Dim check As String
Dim string1 As String
Dim string2 As String
Dim stringa As String
Dim stringb As String
Dim Rango As Variant
Sheets("RESULTADO").Select
numcol = Range("E2").Column
cont = 2
cont2 = 3
If IsEmpty(Range("E2").Value) = True Then
check = 0
Else
check = 1
End If
While (check = 1)
string1 = Cells(cont, 5)
string2 = Cells(cont2, 5)
stringa = Cells(cont, 7)
stringb = Cells(cont2, 7)
comp1 = StrComp(string1, string2)
If (comp1 = "0") Then
Rango = Range(Cells(cont, 7), Cells(cont2, 7))
Av1 = Application.WorksheetFunction.Sum(Rango)
Cells(cont, 7) = Av1
cont = cont
cont2 = cont2
Rows(cont2).EntireRow.Delete
Else
cont = cont + 1
cont2 = cont2 + 1
End If
If IsEmpty(string1) = True Then
check = 0
Else
check = 1
End If
Wend
End Sub
我想不出解决方案,我来这里看看是否有人可以帮助我,
如果有必要,我也可以发送excel文件。
答案 0 :(得分:2)
当stringb = Cells(cont2, 7)
中的单元格包含返回错误的公式(例如#DIV/0!
或#N/A!
或其他任何错误)时,发生类型不匹配错误。 / p>
使用stringb = Cells(cont2, 7).Text
来获取错误文本作为字符串。