My function FindCell is developed to find a specific cell in a range, that contains one or more keywords. I am looking for a solution to pass either a range or an array as Keywords-Parameter, the function itself works with Keywords as Array.

Function FindCell(SearchArea As Range, Keywords As Variant, Optional Usage = "OR") As Integer

DateCell = FindCell(ActiveSheet.UsedRange, KeywordsInRange)
DateCell = FindCell(ActiveSheet.UsedRange, {"Date", "Expiration", "Valid from"} ) <-- does not work in this way

1) How can i check what kind of Keywords (Range or Array) I receive in the function ?
2) How can I transform a given Range Object into an Array for further execution in my function ?
3) Is it possible to declare one or more keywords in the function call and how, what else is the easiest way ?