Recently I wrote a function for my friend that does exactly what you need. Open a VBA editor, add new module, and paste it there, then just run.
Option Explicit
Sub Macro1()
Dim i As Long
Dim j As Long
Dim mrow As Long
Dim mcol As Long
i = 0
mcol = 4
mrow = Cells(Rows.Count, 1).End(xlUp).Row
Cells(1, mcol - 1).EntireColumn.Insert shift:=xlToRight
Cells(1, 2).Copy
Cells(1, 3).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range(Cells(mrow * i + 1, 3), Cells(mrow + mrow * i, 3)).FillDown
i = i + 1
While (Cells(1, mcol).Value2 <> "" And i < 200)
'' copy data
Range(Cells(1, mcol), Cells(mrow, mcol)).Copy
Cells(mrow * i + 1, 2).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
'' copy dates
Range(Cells(1, 1), Cells(mrow, 1)).Copy
Cells(mrow * i + 1, 1).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
'' fill down country
Cells(mrow * i + 1, 2).Copy
Cells(mrow * i + 1, 3).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range(Cells(mrow * i + 1, 3), Cells(mrow + mrow * i, 3)).FillDown
'' delete copied data
Range(Cells(1, mcol), Cells(mrow, mcol)).Clear
'' increase counter
i = i + 1
mcol = mcol + 1
Wend
For j = i To 1 Step -1
Cells(j * mrow + 1, 1).Select
Selection.EntireRow.Delete (xlUp)
Next j
End Sub