影刀excel操作-多个sheet对应copy到多个sheet中

好久没更新了,最近工作中频繁使用到excel,每次复制粘贴的时候都会觉得好麻烦,一直听说有影刀这个“按键精灵”,所以决定好好学习一下。

今天学习到的是怎么把多个sheet的表格分别copy到另外一张表的多个对应的sheet中,简单来讲,就是把copy.xlsx中的a,b,c三个sheet,分别copy放到对应paste.xlsx表的d,e,f这三个sheet中。

主要用到的是python中的for i,j in zip(list1,list2)这个语句,用影刀来表示。 

在VBA中,可以使用Worksheet对象的Copy和Paste方法来实现合并多个sheet中的对应列。具体步骤如下: 1. 打开需要进行合并的Excel文件,按下Alt + F11打开VBA编辑器。 2. 在VBA编辑器中,插入一个新的模块,并在模块中编写下面的代码: ```vb Sub MergeColumns() Dim i As Integer Dim j As Integer Dim k As Integer Dim lRow As Long Dim lCol As Long Dim sht As Worksheet '获取第一个sheet的行数和列数 Sheets(1).Select lRow = ActiveSheet.UsedRange.Rows.Count lCol = ActiveSheet.UsedRange.Columns.Count '循环遍历所有的sheet For i = 2 To Sheets.Count '获取当前sheet的行数和列数 Sheets(i).Select lRow = ActiveSheet.UsedRange.Rows.Count lCol = ActiveSheet.UsedRange.Columns.Count '查找对应列的列号 For j = 1 To lCol If Sheets(i).Cells(1, j).Value = "column_name" Then k = j Exit For End If Next j '复制当前sheet对应列的数据到第一个sheet对应列的下一行 For j = 2 To lRow Sheets(i).Cells(j, k).Copy Destination:=Sheets(1).Cells(lRow + j - 1, k) Next j Next i End Sub ``` 3. 在代码中,首先获取第一个sheet的行数和列数,然后循环遍历所有的sheet。在每个sheet中查找对应列的列号,然后将当前sheet对应列的数据复制到一个sheet对应列的下一行。最终得到的就是合并后的对应列的数据。 4. 在VBA编辑器中点击运行按钮或按下F5键来执行代码。 注意:在执行代码前,请确保要合并的多个sheet中含有需要合并的对应列,并且这些对应列的列名是相同的,否则可能会导致数据合并错误。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值