如何将单引号和逗号添加到列中的所有值?

时间:2017-03-20 22:39:19

标签: excel vba excel-vba excel-formula excel-2010

我的列host包含以下值:

server1.abc.com
server2.abc.com
server3

现在,我希望这些值中的每一个都是单引号并用逗号分隔。输出应如下所示:

'server1.abc.com','server2.abc.com','server3'

请告诉我如何使用Excel实现这一目标。

到目前为止,我可以使用,将值与以下代码分开:

Public Function MergeME(r As Range) As String
  MergeME = Join(Application.Transpose(r.Value), ",")
End Function

如何在每个单元格中的值周围添加双引号?

3 个答案:

答案 0 :(得分:6)

您的原始UDF已关闭。您只需加入,而不是',然后将Public Function MergeME(r As Range) As String MergeME = "'" & Join(Application.Transpose(r.Value), "','") & "'" End Function 放在输出字符串的开头和结尾

'server1.abc.com','server2.abc.com','server3'

根据需要输出字符串:

cust <- c("#FC4C00", "#C60C30", "#1C2841", "#79BDEE","#003DA5",...,)

答案 1 :(得分:1)

数据在 A1 A3 时,在 B1 中输入:

="'"

这是一个用双引号括起来的单引号

然后在 B2

=B1 & A1 & B1 & "," & B1 & A2 & B1 & "," & B1 & A3 & B1

enter image description here

答案 2 :(得分:-1)

不需要功能或VBA

In cell B1 input this = CHAR(39)
In cell C1 input this ,
In cell D1 = CONCAT($B$1,A1,$B$1,$C$1)
In cell D2 = CONCAT(D1,$B$1,A2,$B$1,$C$1)

从D2-D(x)这是自动化的,您可以将Cell D2复制到Cell D3,从而得到:

in cell D3 = CONCAT(D2,$B$1,A3,$B$1,$C$1)

您可以通过查找在Dx列中找到最大长度,然后获取最终输出字符串;我在这里没有这样做-我添加了以下内容:

In cell E3 = LEN(D3) 

我将最后一个逗号取出:

In cell F2 = LEFT(D3,E3-1)

非常自动化的任务