この関数を作成しましたが、値をセルに入れることはできますが、.NumberFormat プロパティを設定することはできません。
Public Function NewYears(year As Integer)
'Determine the cell that called the function
Dim rng As range
Set rng = ThisWorkbook.Sheets("How-To").range(Application.Caller.Address)
MsgBox rng.Address
fxFormat = "[$" & holidayName & "]"
NewYears = DateSerial(year, 1, 1)
rng.NumberFormat = fxFormat
End Function
更新詳細については:
日付を返す =NewYears() のような関数を用意します。
これを何連休でもやります。まだ日付を格納しているフィールドをフォーマットしたいのですが、.NumberFormatプロパティには休日の名前があります
したがって、=NewYears() は「01/01/2014」を返しますが、シートでは「新年」と表示されます。