这个问题的背景是关于文本到列功能的宏观记录。我的国家使用dd / mm / yyyy日期格式,但我工作的公司中的某个数据库使用mm / dd / yyyy。我无法在提取之前更改数据库或模板的日期格式,因为我是一名低级实习生且公司是跨国公司。
所以我的问题:
Manual Text to Column
Recorded macro Text to Column
列B是来自数据库的原始数据,列AL到AN是文本的最终结果是列的位置,因此AL是月,AM是日,AN是年。列O是我做的地方= DATE(左(AN,4),AL,AM)以dd / mm / yyyy得到日期。
因此格式为mm / dd / yyyy hh:mm PM(12小时格式)的日期被识别为字符串,而mm / dd / yyyy hh:mm(24小时格式)中的日期被识别为日期。宏设置很好地分割字符串日期没有问题,但对于日期日期,从链接的2张图片中可以看到,值被交换。
希望有人可以启发我关于Text to Column宏录制这个古怪的方面,如果我对我的问题的解释不充分/足够详细,我很抱歉,如果您需要更多信息,请告诉我!提前谢谢。
编辑: 我只是意识到在关闭电脑后我忘了包含录制的vba代码,不好。
Sub TextToCol()
'
' TextToCol Macro
'
'
Columns("B:B").Select
Range("B3").Activate
Selection.TextToColumns Destination:=Range("AL1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=False, Other:=True, OtherChar _
:="/", FieldInfo:=Array(Array(1, 1), Array(2, 1), Array(3, 1)), _
TrailingMinusNumbers:=True
End Sub