将范围和粘贴子集拆分到新工作表

时间:2015-12-02 13:54:18

标签: excel vba excel-vba

我是VBA的新手,我真的被卡住了。任何帮助深表感谢。 我正在尝试比较两个单独工作簿中的两列,并将其中一列拆分为两个工作表。

“受过训练”是所有受过程序训练的人的工作表(历史和现在都使用)。 “就业”是目前在公司工作的所有人员的工作表(经过培训且未经过培训)。

我希望最终得到一份“当前和受过训练”的工作表,另一份名为“历史和训练”的工作表。

我有代码来比较“雇用”和“受过训练”。

我的逻辑是:

如果“受雇”中的姓名在“受过训练”中,请将其留在那里(这将被重命名为“当前和受过训练”的文件)。

否则转向“历史和训练”(已创建)

我对If Else语句有困难。我的比较子在下面。任何帮助都会很棒。

Sub Compare()
Dim Range1 As Range, Range2 As Range, rng1 As Range, rng2 As Range, outRng As Range

'gets ranges from user to be compared
Set Range1 = Application.Selection
Set Range1 = Application.InputBox("Range1 :", Type:=8)
Set Range2 = Application.InputBox("Range2:", Type:=8)
Application.ScreenUpdating = False

'compares both ranges
For Each rng1 In Range1
    xValue = rng1.Value
    For Each rng2 In Range2
        If xValue = rng2.Value Then
           If outRng Is Nothing Then
                Set outRng = rng1
           Else
                Set outRng = Application.Union(outRng, rng1)
           End If
        End If
    Next
Next

'I think the If statements should go here but i'm not sure

End Sub

0 个答案:

没有答案