You can check for currency by checking to see if VarType(Cell Value) = 6
In tests however there is a flaw in this plan, in that it only seems to recognise the values in £ - if you use the $ symbol (or any other currency) it doesn't recognise it
It will recognise the £ symbol used in currency or accounting format.
a fairly simplistic function for that would be
Function IsCurrency(sSheet As String, sRange As String) As Boolean
If VarType(Worksheets(sSheet).Range(sRange).Value) = 6 Then
IsCurrency = True
IsCurrency = False