excel替换多行的值

时间:2013-06-13 18:01:06

标签: excel

我有一个很好的问题,我到目前为止还没有找到解决办法。

假设我有两列日期名称

数据可能类似于

日期|名称
02-05-1996 |史密斯 02-06-1996 |约翰逊 07-09-1996 |格里芬
02-08-2001 |卡尔森
17-11-2001 | petersen

我希望更改日期列中的值,以便它只剩下那一年 - 如下所示:

日期|名称
1996年|史密斯 1996年|约翰逊 1996年|格里芬
2001 |卡尔森
2001 | petersen

你怎么能这样做?

非常感谢你的帮助!

3 个答案:

答案 0 :(得分:1)

您正在寻找的是YEAR()函数

http://office.microsoft.com/en-ca/excel-help/year-HP005209343.aspx?CTT=5&origin=HP005204211

假设您的日期列为A

= year(A1)

答案 1 :(得分:0)

假设日期从A1开始,选择C1并输入=Year(A1)并将其复制以填满整个范围。

如果您想要删除旧日期,请选择刚创建的年份范围,剪切它,选择包含完整日期的原始范围,仅粘贴值。

答案 2 :(得分:0)

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"))