在Excel中将日期与字符串连接

时间:2011-06-13 21:21:08

标签: excel worksheet-function

我在Excel中有两个单元格。一个有字符串,另一个有日期。在第三个单元格中,我想将日期和字符串放在一起。例如:

A1 = "This "
A2 = "03/03/1982"

我希望A3成为:

This 03/03/1982

当我尝试将其放入A3公式时:= A1 & A2它会返回一些有趣的日期数值,并且不会给我字面上的日期。

6 个答案:

答案 0 :(得分:74)

不知道这是不是最好的方法,但我会这样做:

=A1 & TEXT(A2,"mm/dd/yyyy")

这应该将您的日期格式化为您想要的字符串。

编辑:你看到的那个有趣的数字是1899年12月31日到你的约会对象的天数。这就是Excel存储日期的方式。

答案 1 :(得分:14)

这是日期的数字表示。你从类似的公式中提到日期时得到的东西。

你必须这样做:

= A1 & TEXT(A2, "mm/dd/yyyy")

这里最大的问题是格式说明符与语言环境有关。如果使用不同的本地化Excel打开文件,它将无法正常工作/生成。

现在,您可以拥有用户定义的功能:

public function AsDisplayed(byval c as range) as string
  AsDisplayed = c.Text
end function

然后

= A1 & AsDisplayed(A2)

但是Excel中存在一个错误(功能?),因为.Text属性在计算周期的某些阶段突然not available,并且您的公式显示#VALUE而不是他们应该做什么。

也就是说,这两种方式都很糟糕。

答案 2 :(得分:6)

另一种方法

=CONCATENATE("Age as of ", TEXT(TODAY(),"dd-mmm-yyyy"))

这将返回 年龄截至2013年8月6日

答案 3 :(得分:3)

感谢您的解决方案!

它有效,但在法语Excel环境中,您应该应用类似

的内容
TEXTE(F2;"jj/mm/aaaa")

连接后,在F2单元格中显示保留日期。 最诚挚的问候

答案 4 :(得分:2)

你可以这么简单地做到这一点:

  

A1 = Mahi
   A2 = NULL(空白)

选择 A2 右键单击单元格 - > 格式化单元格 - >改为 TEXT

然后将日期记入A2(A2 = 31/07 / 1990)

然后连接它将工作。不需要任何公式。

  

= CONCATENATE(A1,A2)

     

mahi31 / 07/1990

(这适用于空单元格,即。在将DATE值输入单元格之前,需要将其设为TEXT)。

答案 5 :(得分:0)

我发现对于这种情况,最简单的解决方案是为包含日期的单元格定义一个自定义数字格式。这种情况下的格式应该是:

"This:" mm/dd/yyyy

要设置此格式:

  1. 右键单击单元格
  2. 选择单元格格式
  3. 选择数字选项卡(应该默认显示)
  4. 从类别列表中选择自定义
  5. 在“类型”字段中指定格式
  6. 按确定

注意:如果您确实希望从单元格中选取前面的文本,则此解决方案将无法按所述方式工作。