从excel读取DateTime时,结果日期和月份将以dd MM的形式读取,而excel内容是根据MM dd样式的。
S1包含:“ 2017年12月9日”
代码:
Dim t_from As DateTime
t_from = CDate(s1)
t_from包括9月作为一个月,而不是应有的12月。
我也尝试过:
Dim b As Boolean = DateTime.TryParseExact(s1, "MM/dd/yy",
System.Globalization.CultureInfo.InvariantCulture,
Globalization.DateTimeStyles.None,dt)
此代码失败(字符串未被识别为有效的DateTime)
如何根据第一个月(日期之前)将文本转换为DateTime VB变量?
答案 0 :(得分:1)
“ M / d / yyyy h:m:s tt”格式应正确解析来自Excel的日期
Dim parsedDate As Date
Date.TryParseExact(
"9/12/2017 12:00:00 AM",
"M/d/yyyy h:m:s tt",
Globalization.CultureInfo.InvariantCulture,
Globalization.DateTimeStyles.None,
parsedDate)
parsedDate.ToString() ' 12.09.2017 00:00:00
对于“ 12/09/2017”,其中12是一个月,而09是一天使用格式:“ MM / dd / yyyy”