Excel 将行复制到一个单元格VBA

Excel 将行复制到一个单元格VBA,excel,vba,row,Excel,Vba,Row,我的工作表中只有一列有各种值,如: A B C D E F ... 我需要编写一个简单的代码,将所有这些放在一个单元格(例如D2)中,我希望该单元格有一个值: A;B;C;D;E;F;... 在一种简单的形式中,以下VBA宏可以完成此工作(假设Excel工作表a列中有要连接并将结果放入单元格D2中的值): 您可以根据自己的目的对其进行修改。此外,还可以通过添加以下条件排除空单元格: If Cells(i, 1).Value <> "" Then s = s & Cells

我的工作表中只有一列有各种值,如:

A
B
C
D
E
F
...
我需要编写一个简单的代码,将所有这些放在一个单元格(例如D2)中,我希望该单元格有一个值:

A;B;C;D;E;F;...

在一种简单的形式中,以下VBA宏可以完成此工作(假设Excel工作表a列中有要连接并将结果放入单元格D2中的值):

您可以根据自己的目的对其进行修改。此外,还可以通过添加以下条件排除空单元格:

If Cells(i, 1).Value <> "" Then s = s & Cells(i, 1).Value & ";"
如果单元格(i,1).Value为“”,则s=s&单元格(i,1).Value为&“

希望这能有所帮助。致以最诚挚的问候,

以下VBA宏以简单的形式可以完成此任务(假设Excel工作表的a列中有要连接并将结果放置在单元格D2中的值):

您可以根据自己的目的对其进行修改。此外,还可以通过添加以下条件排除空单元格:

If Cells(i, 1).Value <> "" Then s = s & Cells(i, 1).Value & ";"
如果单元格(i,1).Value为“”,则s=s&单元格(i,1).Value为&“

希望这能有所帮助。致以最诚挚的问候,

如果你在谷歌上搜索过,你可能会无意中发现,这是一种使用Excel公式的非常有趣的方式

=CONCATENATE(TRANSPOSE(A1:A6 & ";"))
您只需确保使用
F9
previor执行
TRANSPOSE
函数


不过,您也可以始终使用VBA用户定义函数来完成它。

如果您在谷歌上搜索过,您可能会偶然发现,这是使用Excel公式实现的一种非常有趣的方式

=CONCATENATE(TRANSPOSE(A1:A6 & ";"))
您只需确保使用
F9
previor执行
TRANSPOSE
函数


不过,您也可以使用VBA用户定义函数来完成此任务。

到目前为止您尝试过什么吗?您想要基于Excel的解决方案还是基于VBA的解决方案?你在这方面寻找过类似的解决方案吗?您看到本页右下角的相关问题了吗?Excel解决方案很简单,我使用了很长时间,但现在无法使用(列表正在更改),需要升级代码。我试图通过SQLBase编写它,但我觉得它毫无用处。我只写了一些有趣的东西,比如
recordNumber=Cells.Find(What:=“*”,SearchDirection:=xlPrevious,SearchOrder:=xlByRows)。Row
到目前为止你试过什么吗?您想要基于Excel的解决方案还是基于VBA的解决方案?你在这方面寻找过类似的解决方案吗?您看到本页右下角的相关问题了吗?Excel解决方案很简单,我使用了很长时间,但现在无法使用(列表正在更改),需要升级代码。我试图通过SQLBase编写它,但我觉得它毫无用处。我只写了一些有趣的东西,比如
recordNumber=Cells.Find(What:=“*”,SearchDirection:=xlPrevious,SearchOrder:=xlByRows)。行
和我想的一样简单。。。谢谢:)不客气!祝你的项目好运。向您致意,一个问题,我只有一个问题,不应该是类似于
单元格(i,1)的内容。Value
?它应该双向工作(Value是默认属性)。确保将文本放在正确的列(a)中。致以最诚挚的问候,阿列克斯贝尔请在发布答案之前仔细检查相关问题。正如我所想的那样简单。。。谢谢:)不客气!祝你的项目好运。向您致意,一个问题,我只有一个问题,不应该是类似于
单元格(i,1)的内容。Value
?它应该双向工作(Value是默认属性)。确保将文本放在正确的列(a)中。致以最良好的祝愿,阿列克斯贝尔请在发布答案之前仔细检查相关问题。这是一个非常好的技巧!值得记住。一个非常好的把戏!值得记住。