excel中使用vba計算指定間隔月後的日期
工具/原料
excel2013
更多經驗請關注,如果幫到了你,請在上方給個投票謝謝支援。 好人一生平安。
先頂後看年薪百萬,如果幫到了你,幫忙給個好評,這對小編很重要,萬分感謝。
方法/步驟
首先我們開啟一個工作樣表作為例子。
使用alt+f11組合快捷鍵進入vbe編輯器,插入一個新的模組,並在模組中輸入以下程式碼:
Option Explicit
Sub ddt()
Dim rq As Date
Dim lx As String
Dim n As Integer
Dim Msg
lx = "m"
rq = InputBox("請輸入一個日期")
n = InputBox("輸入增加月的數目:")
Msg = "新日期:" & DateAdd(lx, n, rq)
MsgBox Msg
End Sub
這裡我們先對變數做宣告,其中rq變數為日期型別,lx為字串,n為整數型。msg我並沒有設定具體型別,vba會將其預設為可變型別variant。
稍微詳細的解釋一下程式碼為什麼會這樣寫,定義變數lx為一個字串值,因為dateadd函式的必須引數1是一個字串,這裡做個定義其實等價於直接輸入。但是這樣便於閱讀。
輸入日期我們並沒有做錯誤糾正,那麼只有對excel瞭解的人,才會輸入正確的日期格式,這裡我只做一個簡單的示例,提示大家輸入2016/8/19這樣的格式日期。增加的月數我們是賦值給了n這個變數。
最後用msgbox來輸出最後的結果,其中,dateadd函式的第一引數是以月增加,第二引數是增加數,第三引數是指定的日期。執行程式碼我們可以得到結果。增加20個月後的結果。
注意事項
謝謝你的投票。