将行数据合并到一个单元格中,用引号和逗号分隔

时间:2012-04-04 16:57:37

标签: excel vba excel-vba

我有以下数据:

2
3
4
5
6
7
8
9
10
apple
green
hi

我想将所有这些合并为一个值,如下所示:

  

'2', '4', '5', '6', '7', '8', '9', '10', '苹果', '绿色', 'HI'

所以我需要从行中获取数据,将它们粘贴到Excel文件中,运行此宏并将它们全部放在一个单元格中(使用逗号和引号)。然后,我将它们放在SQL语句的WHERE IN子句中,以便更快地进行搜索。如果有更简单的方法或工具,请告诉我。

这是SQL中的预期用途:

Select *
from Blah..Table
where IDs in 
(
'2','4','5','6','7','8','9','10','apple','green','hi'
)

1 个答案:

答案 0 :(得分:3)

我编写了一个名为JoinRange的用户定义函数来执行此操作。你可以在这里获得代码

http://www.dailydoseofexcel.com/archives/2012/03/31/joinrange-update/

你会像

一样使用它
=joinrange(A1:A12,,"','","'","'")

给出结果

'2','3','4','5','6','7','8','9','10','apple','green','hi'

您也可以从VBA调用它。