如何仅将可见/过滤后的数组值复制到剪贴板?

时间:2018-12-09 02:10:47

标签: excel vba excel-vba

所以我有一个数据工作表,我想用逗号分隔的数组复制到剪贴板。如果必须先将值粘贴到单元格中,那也很好。工作表上已启用自动筛选器并已被筛选。我只想选择由于过滤而不是整个数组当前可见的值。

该数组在P列中,并从P2开始。我已经设置了LastRow,并且能够使用逗号分隔的部分来工作,但是在复制到剪贴板部分和仅可见值部分时遇到了麻烦。

下面的代码创建了逗号分隔的列表,我可以在消息框中显示它,但是我不确定如何将其复制到剪贴板或如何确保仅选择可见值。 / p>

Dim LastRow As Long
LastRow = Range("P" & Rows.Count).End(xlUp).Row

Dim arr
arr = Join(Application.Transpose(Range("P2:P" & LastRow).Value), ",")

2 个答案:

答案 0 :(得分:1)

尝试此代码

$.post

答案 1 :(得分:-2)

Range(“ P2:P”&Cells(Rows.Count,“ P”)。End(xlUp).Row).SpecialCells(xlCellTypeVisible)