如何自动选择不连续的行/列范围

如何自动选择不连续的行/列范围

我有一个 Excel 文档,我想从中选择几百行(不一定是连续的),然后将它们复制到另一个文档中(该文档将顺便作为 Word 地址标签文档的源文档)。

除了第一部分:选择适当的行之外,我已经弄清楚了如何做到这一点。

是否有某个对话框,让我可以输入字符串(例如“1-5、7、9-13、24-28、33”),然后选中指示的行?还是我必须使用某种宏?

编辑:请注意,我追求的是常规选择。我想“自动化”按住 CTRL 键逐列单击的繁琐过程,以实现所需的选择。

答案1

这应该可以为您完成此操作,假设(在下面的代码中)A1 是您放置数据的位置。

请注意,它将接受数字作为行,字符串作为列

Option Explicit
Sub HighlightAllSortsOfMadness()

Dim values() As String

values = Split(Range("A1").Value, ",") 'A1 is rows and columns you specify, such as 1,4,6,7,B,D . Separate each with a comma, 


Dim result As String

Dim i As Integer

    For i = 0 To UBound(values)
        If values(i) = "" Then
            Exit For
        End If

    result = result & values(i) & ":" & values(i) & ","

    Next i

    Range(Left(result, Len(result) - 1)).Select

End Sub

在此处输入图片描述

在我运行宏之后

在此处输入图片描述

答案2

如果您知道字母/数字,您可以使用一个简单的公式选择它们:=B:B;D:D;G:G;I:I;K:K;N:P;

B:B 将选择整列。N:P 将选择从 N 到 P 的整列(含)。

相关内容