我有几个商店的数据集,我尝试能够独立计算每个商店。
需要注意的是,销售额以日元计算,因此每笔销售额以千计。因此,我在 VBA 中运行了以下代码。
Dim siteID As String, total As Integer, sheet As Worksheet, i As Integer
total = 0
siteID = InputBox("Enter the SiteID name (case sensitive)")
For Each sheet In Worksheets
For i = 2 To 1000
If sheet.Cells(i, 2).Value = siteID Then
total = total + sheet.Cells(i, 26).Value
End If
Next i
Next sheet
MsgBox "total sales of " & siteID & " is " & total
因此我收到了runtime e error 6
我对此进行了一番调整,意识到这是因为结果中的字符太多。最后,我将日元转换为美元,然后代码就成功了!
我想知道是否有更优雅的方法来做到这一点,以便结果保留为日元,而我不必手动转换为美元。
答案1
将您的“总计”数据类型从 Integer 更改为 Long,我猜您正在溢出 Integer 可以容纳的内容。