여러 매장의 데이터 세트가 있고 각 매장을 독립적으로 계산할 수 있도록 하려고 합니다.
매출은 JP 엔으로 표시되므로 각 판매가 수천 단위로 이루어집니다. 그래서 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
나는 이것을 조금 가지고 놀았고 결과에 문자가 너무 많기 때문이라는 것을 깨달았습니다. 결국 내가 한 일은 엔화를 USD로 변환하는 것이었고 코드가 작동했습니다!
결과를 JPY로 유지하고 수동으로 USD로 변환할 필요가 없도록 이를 수행하는 더 우아한 방법이 있는지 알고 싶습니다.
답변1
"전체" 데이터 유형을 Integer에서 Long으로 변경하세요. Integer가 보유할 수 있는 용량이 넘치고 있는 것 같습니다.