2

假设我有一系列像这样的单元格:

    A
1  Foo
2  Bar
3  Hello
4  World
5  Random Text

我想做的是让我的公式的结果填充另一个单元格:

Foo, Bar, Hello, World, Random Text

现在,我知道如何连接两个单元格:

=A1&", "&A2

但是我怎样才能对整个系列做同样的事情呢?

4

3 回答 3

1

这是您可能可以使用的功能。只需将其放在您的工作簿代码模块中,然后您可以在单元格中输入它,例如:

=JoinRange(A1:A6)=JoinRange(A2:D15)

Public Function JoinRange(ByVal rng As Range) As String
    Dim dlmt As String: dlmt = ","
    Dim multiRow As Boolean: multiRow = rng.Rows.Count > 1
    Dim r As Long, c As Long

    Select Case rng.Columns.Count
        Case 1
            If multiRow Then
                JoinRange = Join(Application.WorksheetFunction.Transpose(rng), dlmt)
            Else:
                'a single cell
                JoinRange = rng
            End If
        Case Is > 1
            If multiRow Then
                'a 2d range of cells:
                For r = 1 To rng.Rows.Count
                    For c = 1 To rng.Columns.Count
                        JoinRange = JoinRange & rng(r, c) & dlmt
                    Next
                Next
                JoinRange = Left(JoinRange, Len(JoinRange) - 1)

            Else:
                JoinRange = Join(Application.WorksheetFunction.Transpose( _
                                Application.WorksheetFunction.Transpose(rng)), dlmt)
            End If
        Case Else

     End Select

End Function
于 2013-07-18T19:46:06.683 回答
1

=A1B1 中然后=B1&", "&A2在 B2 中并复制下来似乎可行。

于 2013-07-18T19:32:04.073 回答
1

在单元格 B1 中放置一个逗号和一个空格,然后使用以下公式:

=CONCATENATE(A1,B1,A2,B1,A3,B1,A4, B1, A5)

您也可以尝试以下问题的几个答案,包括 VBA 选项和公式:

需要连接不同数量的单元格...

于 2013-07-18T18:59:11.073 回答