在VB脚本中交换两个excel列

时间:2015-07-10 11:53:27

标签: excel excel-vba vbscript vba

我必须将数据从一个excel文件复制到另一个excel文件。但问题是,在将其粘贴到目标之前,我必须交换两个列数据。

我对VB脚本非常陌生,很想听听你们有关如何继续的事情。

谢谢!

1 个答案:

答案 0 :(得分:1)

这是一种方法。 但你可以通过录制宏来找到它。

Sub Swap_Columns()
'Replace A:A with one your swapping
'C:C needs to be a blank column you can use to move the data
'Replace B:B with your other Column
'Replace Sheet1 with your sheet name
    Sheets("Sheet1").Columns("A:A").Cut Destination:=Columns("C:C")
    Sheets("Sheet1").Columns("B:B").Cut Destination:=Columns("A:A")
    Sheets("Sheet1").Columns("C:C").Cut Destination:=Columns("B:B")
End Sub  

如果您想在单独的工作表上使用它,请将其放入模块中,然后您可以从工作簿上的任何位置调用Swap宏。<​​/ p>

Sub Swap()
Dim ws As String
ws = Application.ActiveSheet.Name
    Sheets(ws).Columns("A:A").Cut Destination:=Columns("C:C")
    Sheets(ws).Columns("B:B").Cut Destination:=Columns("A:A")
    Sheets(ws).Columns("C:C").Cut Destination:=Columns("B:B")
End Sub