我的任务是创建一个简单的 Excel 工作表,该工作表在 A 列中采用未指定数量的行,如下所示:
1234
123461
123151
11321
Run Code Online (Sandbox Code Playgroud)
并将它们放入另一个单元格中的逗号分隔列表中,用户可以轻松地将其复制并粘贴到另一个程序中,如下所示:
1234,123461,123151,11321
Run Code Online (Sandbox Code Playgroud)
什么是最简单的方法来做到这一点?
Sux*_*ose 161
假设您的数据从 A1 开始,我会将以下内容放在 B 列中:
乙1:
=A1
Run Code Online (Sandbox Code Playgroud)
乙2:
=B1&","&A2
Run Code Online (Sandbox Code Playgroud)
然后,您可以将列 B2 向下粘贴到整列。B 列中的最后一个单元格现在应该是 A 列的逗号分隔列表。
小智 98
,
),按Ctrl- H(查找和替换)^p
,
Sco*_*ner 63
如果您有 Office 365 Excel,则可以使用 TEXTJOIN():
=TEXTJOIN(",",TRUE,A:A)
Run Code Online (Sandbox Code Playgroud)
mun*_*lli 25
我实际上只是在 VBA 中创建了一个模块来完成所有工作。它接受我的范围列表并创建一个以逗号分隔的字符串,该字符串输出到我选择的单元格中:
Function csvRange(myRange As Range)
Dim csvRangeOutput
Dim entry as variant
For Each entry In myRange
If Not IsEmpty(entry.Value) Then
csvRangeOutput = csvRangeOutput & entry.Value & ","
End If
Next
csvRange = Left(csvRangeOutput, Len(csvRangeOutput) - 1)
End Function
Run Code Online (Sandbox Code Playgroud)
所以然后在我的单元格中,我只是放了=csvRange(A:A)
它,它给了我逗号分隔的列表。
sun*_*set 12
另一种方法是将 Excel 列粘贴到此浏览器内工具中:
convert.town/column-to-comma-separated-list
它将一列文本转换为逗号分隔的列表。
由于用户无论如何都在复制和粘贴到另一个程序,这对他们来说可能同样容易。
你可以做这样的事情。如果你不是在谈论一个巨大的电子表格,这将执行“确定”......
这是 VBA 宏代码:
Sub generatecsv()
Dim i As Integer
Dim s As String
i = 1
Do Until Cells(i, 1).Value = ""
If (s = "") Then
s = Cells(i, 1).Value
Else
s = s & "," & Cells(i, 1).Value
End If
i = i + 1
Loop
Cells(1, 2).Value = s
End Sub
Run Code Online (Sandbox Code Playgroud)
请务必将单元格 B1 的格式设置为“文本”,否则您会得到一个混乱的数字。我相信你也可以在 VBA 中做到这一点,但我现在不确定如何,需要重新开始工作。;)
小智 7
使用 vi 或 vim 简单地在每行末尾放置一个逗号:
%s/$/,/
Run Code Online (Sandbox Code Playgroud)
解释这个命令:
%
表示对所有行执行操作(即查找和替换)s
表示替代/
分隔参数(即,s/find/replace/options
)$
代表一行的结尾,
在这种情况下是替换文本 归档时间: |
|
查看次数: |
953302 次 |
最近记录: |