我有一个很好的问题,我到目前为止还没有找到一个解决方案。
假设我有两个列日期和名称
数据可以是像
这样的东西日期|名字
02-05-1996 | Smith
02-06-1996 |约翰逊
2012-09-1996 | griffin
02-08-2001 |卡尔森
17-11-2001 | petersen
,我想改变日期列的值,这样就只剩下年份了——像这样:
日期|名字
1996 |史密斯
1996 |约翰逊
1996 | griffin
2001 |卡尔森
2001 | petersen
你怎么能这样做?
非常感谢你的帮助!
您要查找的是YEAR()函数
http://office.microsoft.com/en-ca/excel-help/year-HP005209343.aspx?CTT=5&起源= HP005204211
假设你的日期列是A
= year(A1)
假设日期从A1开始,选择C1并键入=Year(A1)
并向下复制以填充整个范围
如果你想去掉旧的日期,选择刚刚创建的年份范围,剪切它,选择完整日期的原始范围,只粘贴值。
option explicit
Sub ChangeDateValuesToYear(ByVal startCell As Range)
Dim cell
Dim lastCellInThisColumn As Range
Set lastCellInThisColumn = startCell.End(xlDown)
Dim dateDataRange As Range
Set dateDataRange = Range(startCell, lastCellInThisColumn)
For Each cell In dateDataRange
cell.Value = Year(cell.Value)
Next
dateDataRange.NumberFormat = 0
End Sub
编辑:假设日期单元格位于A
列,从A1
开始,您可以执行以下操作
call ChangeDateValuesToYear(Range("A1"))