Tengo un conjunto de datos de varias tiendas y mi intento es poder calcular cada tienda de forma independiente.
Es importante tener en cuenta que las ventas están en yenes japoneses y, por lo tanto, son de miles por cada venta. Entonces ejecuté el siguiente código en 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
Como resultado he recibidoruntime e error 6
Modifiqué un poco esto y me di cuenta de que el resultado tiene demasiados caracteres. Finalmente, lo que hice fue convertir yenes a dólares estadounidenses y ¡el código funcionó!
Quiero saber si hay una forma más elegante de hacer esto para que el resultado permanezca en JPY y no tenga que convertir manualmente a USD.
Respuesta1
Cambie su tipo de datos "total" de Integer a Long, supongo que está desbordando lo que Integer puede contener.