【问题标题】:Pick values from multiple cells and paste output in one cell从多个单元格中选择值并将输出粘贴到一个单元格中
【发布时间】:2017-04-03 12:21:44
【问题描述】:

我有一个如下所示的数据集:

A   0.998315185
B   0.232720507
C   0.010558964
D   0.004246209
E   0.002552556

我想将下面的输出粘贴到一个单元格中:

0.998315185A+0.232720507B+0.010558964C+0.004246209D+0.002552556E

这样我就可以复制它并在其他地方使用它。

【问题讨论】:

  • 为什么只使用大写字母?
  • 嗨罗伊。请编辑您的问题以删除 SHOUTY 大写字母。
  • 您的样品有多大?如果只有几个单元格,您可以手动使用与号 (&) 连接:=A2&"A +"&A3&"B +" 等。
  • 样本为 40 行
  • 你在研究大型机数据集吗?

标签: excel excel-formula string-concatenation textjoin


【解决方案1】:

将较新的 TEXTJOIN 函数用作具有 CSE 的 数组公式

=TEXTJOIN("+", TRUE, B2:INDEX(B:B, MATCH(1E+99, B:B))&A2:INDEX(A:A, MATCH(1E+99, B:B)))


¹ TEXTJOIN 在以下版本中随 Excel 2016 一起推出:适用于 Android 手机的 Excel、Excel Mobile、带有 Office 365 的 Excel 2016、适用于 Mac 的 Excel 2016、Excel Online、适用于 iPad 的 Excel, Excel for iPhone 和 Excel for Android 平板电脑。

【讨论】:

    【解决方案2】:

    你可以试试这个用户定义函数。像这样在工作表上的单元格中使用此函数...

    =CombineData(A1:B5)
    

    用户定义函数:

    Function CombineData(ByVal Rng As Range) As String
    Dim i As Long, j As Long
    Dim str As String
    Dim cell As Range
    For i = 1 To Rng.Rows.Count
        For j = Rng.Columns.Count To 1 Step -1
            If str = "" Then
                str = Rng.Cells(i, j)
            Else
                str = str & Rng.Cells(i, j)
            End If
        Next j
        str = str & "+"
    Next i
    CombineData = str
    End Function
    

    【讨论】:

      猜你喜欢
      • 2017-01-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-26
      • 1970-01-01
      相关资源
      最近更新 更多