Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 从其他工作簿获取值并基于列名应用前缀_Vba_Excel - Fatal编程技术网

Vba 从其他工作簿获取值并基于列名应用前缀

Vba 从其他工作簿获取值并基于列名应用前缀,vba,excel,Vba,Excel,我知道这个问题太简单了。但是,我不知道如何在vba excel中应用我的逻辑。我想从一个工作簿Book1.xls获取数据或将数据拉入另一个工作簿Book2.xls。我需要得到Book1的A列和B列中的值,并在Book2的A列-详细信息中分配它。然后,对于“已添加”列中的每个值,它应该有一个“添加”前缀:,与“已删除”列相同,对于“已删除”列中的每个值,它应该有一个“删除”前缀。Book1中A列和B列的范围可以更改。 谢谢。这应该可以解决问题 Sub AdditionDeletion()

我知道这个问题太简单了。但是,我不知道如何在vba excel中应用我的逻辑。我想从一个工作簿Book1.xls获取数据或将数据拉入另一个工作簿Book2.xls。我需要得到Book1的A列和B列中的值,并在Book2的A列-详细信息中分配它。然后,对于“已添加”列中的每个值,它应该有一个“添加”前缀:,与“已删除”列相同,对于“已删除”列中的每个值,它应该有一个“删除”前缀。Book1中A列和B列的范围可以更改。


谢谢。

这应该可以解决问题

Sub AdditionDeletion()

    Dim ws1 As Worksheet
    Set ws1 = Workbooks("Book1").Worksheets("Compare")

    Dim ws2 As Worksheet
    Set ws2 = Workbooks("Book2").Worksheets("Details")

    Dim current As Long
    current = ws2.Range("A" & rows.count).End(xlUp).row + 1

    Dim i As Long
    For i = 3 To ws1.Range("B" & rows.count).End(xlUp).row
        ws2.Range("A" & current) = "Addition:" & ws1.Range("B" & i).Value2
        current = current + 1
    Next i

    For i = 3 To ws1.Range("A" & rows.count).End(xlUp).row
        ws2.Range("A" & current) = "Deletion:" & ws1.Range("A" & i).Value2
        current = current + 1
    Next i

End Sub