簡體   English   中英

需要幫助輸出vba excel函數作為日期值

[英]Need help to output vba excel function as date value

這是我的功能:

function foo() as date
   foo = "08/15/2015"
end function

如果我將函數更改為以下代碼,則返回42231而不是“8/15/2015”:

function foo()
   foo = format("08/15/2015", "dd/mm/yyyy")
end function

然后它工作,但我無法將輸出格式化為任何其他類型,如longdate或短日期,或手動將其更改為“dd / mm / yyyy”。 我們是否有任何解決方案,vba函數可以輸出日期格式的日期值,輸出可以由用戶手動格式化為另一種類型? 示例:我有“8/15/2015”的輸出,我可以手動將其格式化為“2015年8月15日”

UDF只能將值返回給單元格,而不能格式化該單元格。 所以:

Public Function foo() As Date
    foo = DateSerial(2015, 8, 15)
End Function

將顯示:

在此輸入圖像描述

只有你這樣格式化。

注意:

這對UDF來說是正確的。 如果您手動輸入:

=TODAY()

在單元格中,Excel會將單元格格式化為日期格式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM