使用VBA从多个列创build2列表

我试图通过一系列调查结果进行sorting,在调查结果中,受访者select了一个地点作为他们的家,并且可能有许多地点进行他们的研究。

住宅。 研究地点

阿拉巴马州,巴哈马,加利福尼亚州,肯塔基州

加利福尼亚州,AL,秘鲁

等等,为98行。

我想创build一个包含源列和目标列的表格,然后可以在ArcGIS中使用它们来创build径向stream线图。 我需要从VBA中获取上面的多行和不同数量的目标列,并将其排列在一个2列表中,该列表复制每个目的地的居住字段。

住宅。 研究地点

阿拉巴马州,巴哈马

阿拉巴马州,加州

肯塔基州阿拉巴马州

加州,AL

加州,秘鲁

从这里我可以为每个住宅(源)和研究地点(目的地)添加xy坐标来创build我的径向stream线图。

我已经看了几个单列代码范围的例子,但是我还没有发现任何与我的源列相关的东西。 任何帮助,将不胜感激!

我假设你的工作表看起来像这样:

在这里输入图像说明

输出结果如下:

在这里输入图像说明

以下代码将完成此任务:

Sub Data() Application.ScreenUpdating = False Sheets("Sheet1").Activate Range("A1").Activate While ActiveCell.Value <> "" n = 1 Label = ActiveCell.Value While Selection.Offset(0, n) <> "" Item = Selection.Offset(0, n) Sheets("Sheet2").Activate ActiveCell.Value = Label Selection.Offset(0, 1).Value = Item Selection.Offset(1, 0).Select Sheets("Sheet1").Activate n = n + 1 Wend Selection.Offset(1, 0).Select Wend Application.ScreenUpdating = True End Sub