如何在Excel VBA中创build每个成对组合

我在第1列和第2列(01至99)列出了2位数的邮政编码。 我想创build第三列,其中将包含两位数邮政编码的每个成对组合。 因此,我的数据将看起来像这样,列3包含列1和2(9801行)的每个成对组合。

col1 col2 col3 01 01 01 to 01 02 02 02 to 02 03 03 03 to 03 04 04 04 to 04 05 05 05 to 05 06 06 06 to 06 . . . . . . 99 99 99 to 99 

有没有办法将其编码成一个简单的VBA脚本?

与您的任务相关,您可以使用以下Excel VBA代码片段:

 Sub ColumnConcatenation() Dim i As Long, j As Long Const max = 99 Application.ScreenUpdating = False For i = 1 To max For j = 1 To max Range("C" & (i - 1) * max + j) = Range("A" & i) & " to " & Range("B" & j) Next j Next i Application.ScreenUpdating = True End Sub 

希望这可能有帮助。

我几乎没有VBA的经验,但这比我原先想象的更容易理解。

 Sub pairwise() Dim x As Integer Dim x2 As Integer Dim x3 As Double x3 = 1 For x = 1 To 99 For x2 = 1 To 99 Cells(x3, 5) = Cells(x, 1) Cells(x3, 6) = Cells(x2, 2) x3 = x3 + 1 Next Next End Sub 

这创build了2列,然后我可以通过在G1:G9801粘贴公式=E1&" to "&F1G1:G9801 。 如果有这样一个更优雅的方式,我很乐意接受这个答案。