将文本date与星期缩写的date转换为Exceldate格式
我想弄清楚如何从单元格中删除星期几的缩写,然后将文本stringdate转换为Exceldate格式。 这是一个总是相同的格式的例子。
周四8/24/2017
如果我手动删除星期几的字母,然后在Excel中使用文本到列function,它可以很好地转换为date格式。 文本到列function在包含日缩写的单元格上不起作用。
我正在寻找最快的方法(VBA或公式)从多列中删除这些缩写。 查找和replace为“”将是一个选项,但我希望能够减less手动和耗时的工作,因为我将定期处理这个电子表格。 预先感谢您的帮助!
使用:
=--MID(A1,FIND(" ",A1)+1,LEN(A1))
然后以任何你想要的方式格式化
您可以通过忽略“文本到列”中的第一个字段来就地完成此操作。
With Worksheets("sheet3") With .Range(.Cells(2, "A"), .Cells(.Rows.Count, "A").End(xlUp)) .TextToColumns Destination:=.Cells(1), DataType:=xlDelimited, TextQualifier:=xlDoubleQuote, _ ConsecutiveDelimiter:=True, Tab:=False, Semicolon:=False, Comma:=False, Space:=True, Other:=False, _ FieldInfo:=Array(Array(1, 9), Array(2, 3)) End With End With
这会将您的文本转换为Exceldate格式:
=DATEVALUE(MID(B2,4,10))
“2017年8月24日星期四”将以短date格式或“2017年8月24日星期四”以通用格式“2017/8/24”在“长date格式”下变为“42971”。