我試圖很簡單地計算兩個日期之間的天數,我認爲固有的語言設置og excel/windows是與代碼互動,所以如果任何人可以澄清的是事實上是這樣,或者找到一個解決方案,我會非常感激。VBA語言(可能)用代碼
我也應該能夠找到天同年任何給定的兩個日期之間的數,所以爭論的緣故,我拿 - 2015年1月的第一個& - 2015年1月
的第七當我在Excel中寫這些日期是它們編輯成
01/01-2015 & 07/01-2015 因爲丹麥的日期與當天開始,然後是年份和月份
然後我從抓住他們有限公司mboBox到VBA代碼
Set wb = ActiveWorkbook
With wb.Sheets("Start").Shapes("from_dropdown")
sd = DateValue(.ControlFormat.List(.ControlFormat.Value))
End With
With wb.Sheets("Start").Shapes("to_dropdown")
ed = DateValue(.ControlFormat.List(.ControlFormat.Value))
End With
但是,當我嘗試計算他們之間的日子,我得到了150天。我認爲這是語言干擾的原因是,當我顯示「sd」和「ed」與MsgBox它顯示爲
01/01-2015和01/07-2015 IE不丹麥標準。
有沒有人遇到過這個問題?並有一個修復?或者我只是在做其他完全錯誤的事情。
的完整代碼:
Dim wb As Workbook
Dim sd As Date
Dim ed As Date
Dim numDays
Set wb = ActiveWorkbook
With wb.Sheets("Start").Shapes("from_dropdown")
sd = DateValue(.ControlFormat.List(.ControlFormat.Value))
End With
With wb.Sheets("Start").Shapes("to_dropdown")
ed = DateValue(.ControlFormat.List(.ControlFormat.Value))
End With
numDays = DateDiff("d", sd, ed)
MsgBox sd
MsgBox ed
MsgBox numDays
,並在Excel中的值與組合框的參考是
2015年1月1日
2015年2月1日
03/01/2015
04/01/2015
2015年5月1日
2015年6月1日
2015年7月1日
2015年8月1日
2015年9月1日
10/01/2015
非常感謝!那是做的!,我正在將我的頭撞在牆上:P – 2015-04-03 13:08:30