将相同的文本附加到Excel中列中的每个单元格


81

如何在Excel的列中的每个单元格中附加文本?我需要在末尾添加一个逗号(“,”)。

例:

email@address.com 变成 email@address.com,

数据样本:

m2engineers@yahoo.co.in
satishmm_2sptc@yahoo.co.in
threed_precisions@rediffmail.com
workplace_solution@yahoo.co.in
threebworkplace@dataone.in
dtechbng@yahoo.co.in
innovations@yahoo.co.in
sagar@mmm.com
bpsiva@mmm.com
nsrinivasrao@mmm.com
pdilip@mmm.com
vvijaykrishnan@mmm.com
mrdevaraj@mmm.com
b3minvestorhelpdesk@mmm.com
sbshridhar@mmm.com
balaji@mmm.com
schakravarthi@mmm.com
srahul1@mmm.com
khramesh2@mmm.com
avinayak@mmm.com
rockindia@hotmail.com

Answers:


215

看看这是否适合您。

  • 您的所有数据都在A列中(从第1行开始)。
  • 在B列第1行中,输入= A1&“,”
  • 这将使单元格B1等于A1,并附加逗号。
  • 现在选择单元格B1并从单元格的右下角向下拖动到所有行(这将复制公式并使用相应的列A值。)
  • 选择新添加的数据,将其复制并粘贴到需要的位置,使用 Paste -> By Value

而已!


最后一步的说明似乎不完整。我必须实际复制单元格B1,然后选择它下面的其余单元格,然后粘贴。
蒂姆·霍尔特

8
然后,对于任何不知道的人,您都可以复制和Paste Special...>Values将结果值移回原始列,而无需公式破坏它们。
A__

如果要删除某物怎么办?

24

这是一个简单的“&”功能。

=cell&"yourtexthere"

示例-您的单元格中说有米奇,而您想要米奇鼠标。米奇在A2中。在B2中,输入

=A2&" Mouse"

然后,复制并“粘贴特殊”值。

B2 now reads "Mickey Mouse"

22

这很简单...

=CONCATENATE(A1, ",")

示例:如果email@address.com在A1单元格中,则在另一个单元格中写入:= CONCATENATE(A1,“,”)

email@address.com按照此公式,您将获得 email@address.com,

对于删除公式:复制该单元格并使用Alt+ E+ S+V或粘贴特殊值。


6

如果仅出于显示目的添加字符,则无需使用额外的列或VBA 。

正如这篇文章所暗示的,您需要做的是:

  1. 选择您要对其应用格式的单元格
  2. 点击Home标签
  3. 点击 Number
  4. 选择 Custom
  5. Type文本框中,通过将数字零放在所需的任何字符内来输入所需的格式。

此类文本格式示例

  • 如果要120.00读取单元格保持值,请$120K键入$0K

4

非常简单...您可以使用连接功能将所有这些元素放在一个单元格中:

=CONCATENATE(A1, ", ", A2, ", ", and so on)

2

突出显示该列,然后突出显示Ctrl+ F

查找和替换

查找“ .com”

替换“ .com”

然后一个.in

查找和替换

查找“ .in”

替换为“ .in”


1

我只是为了另一个答案写了这个:

你会使用使用例如形式调用它:appendTextToRange "[theRange]", ","

Sub testit()
    appendTextToRange "A1:D4000", "hey there"
End Sub


Sub appendTextToRange(rngAddress As String, append As String)

    Dim arr() As Variant, c As Variant
    arr = Range(rngAddress).Formula

    For x = LBound(arr, 1) To UBound(arr, 1)
        For y = LBound(arr, 2) To UBound(arr, 2)
            Debug.Print arr(x, y)
            If arr(x, y) = "" Then
                arr(x, y) = append
            ElseIf Left(arr(x, y), 1) = "=" Then
                arr(x, y) = arr(x, y) & " & "" " & append & """"
            Else
                arr(x, y) = arr(x, y) & " " & append
            End If
        Next
    Next
    Range(rngAddress).Formula = arr

End Sub


1

其中最简单的方法是使用“数据”选项卡下的“ Flash填充”选项。

  1. 将原始输入列保留在左侧(例如A列),仅在其右侧添加一个空白列(例如B列,此新列将被视为输出)。

  2. 只需在B列的几个单元格中填入实际的预期输出即可。在这种情况下:

          m2engineers@yahoo.co.in,
          satishmm_2sptc@yahoo.co.in,
    
  3. 然后选择您想要输出的列范围以及您手动填充的前几个单元格...然后做魔术...单击“ Flash Fill”。

它基本上了解与输入相对应的输出模式,并填充空白单元格。


0

将文本/值放在第一个单元格中,然后复制该单元格,标记整个列并“粘贴”复制的文本/值。

这在Excel 97中有效-很抱歉,我这边没有其他版本可用...


-2

在一个单元格中键入它,复制该单元格,选择要填充的所有单元格,然后粘贴。

或者,在一个单元格中键入它,选择该单元格右下角的黑色正方形,然后向下拖动。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.