Sub myChartDataReg()
Dim c As Range, typ As String, tr As Long, month As Long
Dim output(6)
Dim wsSR As Worksheet, wsCR As Worksheet
Set wsSR = Sheets("Reg")
Set wsCR = Sheets("ChartReg")
Application.ScreenUpdating = False
wsSR.Activate
wsSR.UsedRange.AutoFilter Field:=35, Criteria1:="<>"
For Each c In wsSR.Range("AQ:AQ").SpecialCells(12)
tr = c.Row
If tr <> 1 Then
output(1) = wsSR.Cells(tr, "P").Value
output(2) = wsSR.Cells(tr, "Q").Value
output(3) = wsSR.Cells(tr, "R").Value
output(4) = wsSR.Cells(tr, "S").Value
output(5) = wsSR.Cells(tr, "T").Value
output(6) = wsSR.Cells(tr, "U").Value
month = wsSR.Cells(tr, "AH").Value
typ = wsSR.Cells(tr, "AI").Value
If typ = "America" Then
wsCR.Range("D45").Offset(, month).Resize(6, 1) = WorksheetFunction.Transpose(output)
ElseIf typ = "Europe" Then
wsCR.Range("D97").Offset(, month).Resize(6, 1) = WorksheetFunction.Transpose(output)
ElseIf typ = "Asia" Then
wsCR.Range("D149").Offset(, month).Resize(6, 1) = WorksheetFunction.Transpose(output)
ElseIf typ = "Africa" Then
wsCR.Range("D201").Offset(, month).Resize(6, 1) = WorksheetFunction.Transpose(output)
Else
GoTo exit_Sub
End If
output(1) = wsSR.Cells(tr, "V").Value
output(2) = wsSR.Cells(tr, "W").Value
output(3) = wsSR.Cells(tr, "X").Value
output(4) = wsSR.Cells(tr, "AB").Value
output(5) = wsSR.Cells(tr, "Z").Value
output(6) = wsSR.Cells(tr, "AC").Value
If typ = "America" Then
wsCR.Range("X45").Offset(, month).Resize(6, 1) = WorksheetFunction.Transpose(output)
ElseIf typ = "Europe" Then
wsCR.Range("X97").Offset(, month).Resize(6, 1) = WorksheetFunction.Transpose(output)
ElseIf typ = "Asia" Then
wsCR.Range("X149").Offset(, month).Resize(6, 1) = WorksheetFunction.Transpose(output)
ElseIf typ = "Africa" Then
wsCR.Range("X201").Offset(, month).Resize(6, 1) = WorksheetFunction.Transpose(output)
Else
GoTo exit_Sub
End If
End If
Next
Selection.NumberFormat = "0.0"
exit_Sub:
wsSR.AutoFilterMode = False
Application.ScreenUpdating = True
End Sub