亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在VBA文本框中格式化MM/DD/YYYY日期

在VBA文本框中格式化MM/DD/YYYY日期

GCT1015 2019-07-06 17:40:01
在VBA文本框中格式化MM/DD/YYYY日期我正在尋找一種將VBA文本框中的日期自動格式化為MM/DD/YYYY格式的方法,我希望它在用戶輸入時格式化。例如,一旦用戶輸入第二個數字,程序將自動輸入“/”?,F在,我使用以下代碼完成了這個工作(以及第二個破折號):Private Sub txtBoxBDayHim_Change()     If txtBoxBDayHim.TextLength = 2 or txtBoxBDayHim.TextLength = 5 then     txtBoxBDayHim.Text = txtBoxBDayHim.Text + "/"End Sub現在,這在打字時效果很好。然而,當嘗試刪除時,它仍然進入破折號,因此用戶不可能刪除其中一個破折號(刪除一個破折號會導致長度為2或5,然后再運行,添加另一個破折號)。有什么更好的方法嗎?
查看完整描述

3 回答

?
郎朗坤

TA貢獻1921條經驗 獲得超9個贊

添加一些跟蹤長度的內容,并允許您對用戶是否添加或減去文本進行“檢查”。這是目前尚未測試,但類似的東西應該可以工作(特別是如果你有一個用戶表單)。

'add this to your userform or make it a static variable if it is not part of a userformprivate oldLength as integerPrivate 
Sub txtBoxBDayHim_Change()
    if ( oldlength > txboxbdayhim.textlength ) then
        oldlength =txtBoxBDayHim.textlength        exit sub
    end if

    If txtBoxBDayHim.TextLength = 2 or txtBoxBDayHim.TextLength = 5 then
    txtBoxBDayHim.Text = txtBoxBDayHim.Text + "/"
    end if
    oldlength =txtBoxBDayHim.textlengthEnd Sub


查看完整回答
反對 回復 2019-07-06
  • 3 回答
  • 0 關注
  • 2694 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號