¿Probaste la macro?
En vba no es necesario declarar las variables.
Si tienes la instrucción Option Explicit, entonces sí tienes que declararlas.
Si quieres que declare las variables:
Sub DatosUnicos()
'Por.Dante Amor
dim cols, col2, i, u, u2
cols = Array("A", "B", "C", "F")
col2 = "Z"
Columns(col2).Clear
For i = LBound(cols) To UBound(cols)
u = Range(cols(i) & Rows.Count).End(xlUp).Row
Range(cols(i) & "1:" & cols(i) & u).Copy
u2 = Range(col2 & Rows.Count).End(xlUp).Row + 1
Range(col2 & u2).PasteSpecial xlValues
Next
Application.CutCopyMode = False
u2 = Range(col2 & Rows.Count).End(xlUp).Row
ActiveSheet.Range(col2 & "1:" & col2 & u2).RemoveDuplicates Columns:=1, Header:=xlNo
MsgBox "Fin"
End Sub