我的日期在一列中看起来像这样:
01-01-2017
04.2.2017
1-02-2017
2.02.2017
我想将它们标准化,使它们看起来像这样:
01-01-2017
04-02-2017
01-02-2017
02-02-2017
现在我通过选择"Text to Columns">"Delimited">Tab">"Date"
来达到预期的效果。但每次我将数据添加到我的数据库(每天一次)时,我必须这样做!
我可以使用公式或vba代码为我做这个吗?
注1 - 使用"格式化单元格"什么也没做,因此" Text to Columns"方法
注2 - 这就是我将数据从一个工作簿复制并粘贴到另一个工作簿的方式......
'copy range from target workbook
vDB = wbTarget.Sheets(Sheet.Name).Range("b3:i102")
'paste the data and then add a column with the demo "TOTAL" next to it
sht1.Range("a" & Rows.Count).End(xlUp)(2).Resize(UBound(vDB, 1), UBound(vDB, 2)) = vDB
答案 0 :(得分:0)
如果格式单元格不起作用,可能是因为它们存储为文本而不是日期。如果您将列更改为日期格式(您可能需要复制并粘贴数据(粘贴值)),它应该修复它。
您还可以使用以下VBA例程将文本更改为日期:
Dim c As Range
For Each c In ActiveSheet.UsedRange.columns("A").Cells
c.Value = DateValue(Replace(c.Value, ".", "/"))
Next c
答案 1 :(得分:-1)
在具有日期的单元格中试图查找&更换 ”。”用“/”?
然后确保具有日期的列格式为:dd-mm-yyyy; @
如果有效,可以编写一个宏来执行此操作。