如何将数据工作表中的数据移至不同的工作表?
办公教程导读
互联网集市收集整理了【如何将数据工作表中的数据移至不同的工作表?】办公软件教程,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1387字,纯文字阅读大概需要2分钟。
办公教程内容图文
![如何将数据工作表中的数据移至不同的工作表?](/upload/InfoBanner/jiaochengoffice/44/fc5914f06a3f4fc2865da9be2b3d09c0.jpg)
Q:我在一个主工作表中导入并存放数据,想要将这些数据分别转移到不同的工作表中,如所示,在工作表Data中存放着各超市的销售数据,现在要将这些数据分别移至具有与超市名称同名的工作表中,即“东区超市”中的数据全部移至工作表“东区超市”中,对于“北区超市”和“西区超市”也是如此。如何使用VBA代码实现一次转移数据?
A:可以使用下面的代码实现,大多数代码的功能见代码中的注释。
SubCopyDataToWorksheet()
‘声明代表存放数据工作表的变量
Dim strSourceSheet As String
‘声明代表要接收数据的工作表的变量
Dim strDestinationSheet As String
‘声明代表工作表最后一行的变量
Dim lngLastRow As Long
‘存放数据的工作表名
strSourceSheet = “Data”
‘选取数据工作表
Sheets(strSourceSheet).Visible = True
Sheets(strSourceSheet).Select
‘选取与接收数据的工作表同名的单元格
Range(“B2″).Select
‘选取的单元格不为空,则继续循环
Do While ActiveCell.Value <>””
‘当前单元格值赋给工作表名变量
strDestinationSheet = ActiveCell.Value
‘选取当前单元格所在的数据行
ActiveCell.Offset( , -1).Resize(1,ActiveCell.CurrentRegion.Columns.Count).Select
‘复制数据行
Selection.Copy
‘选取接收数据的工作表
Sheets(strDestinationSheet).Visible =True
Sheets(strDestinationSheet).Select
‘获取当前工作表最后一行
lngLastRow =LastRowInOneColumn(“A”)
‘选取工作表最后一行之后的空单元格
Cells(lngLastRow + 1, 1).Select
‘粘贴数据
Selection.PasteSpecial xlPasteValues
‘去除复制后单元格框外的虚线
Application.CutCopyMode = False
‘选取数据工作表成为当前工作表
Sheets(strSourceSheet).Select
‘将当前单元格移至下一个与接收数据的工作表同名的单元格
ActiveCell.Offset(1, 1).Select
Loop
End Sub
‘获取工作表中最后一行行号
Public FunctionLastRowInOneColumn(col)
Dim lastRow As Long
With ActiveSheet
lastRow = .Cells(.Rows.Count,col).End(xlUp).Row
End With
LastRowInOneColumn = lastRow
End Function
说明:在示例工作表Data中,我们将各个超市分别放在一起。在实际导入数据时,如果相同名称的数据不在一起也没有关系。当然,你可以使用排序功能将它们放置在一起。
办公教程总结
以上是互联网集市为您收集整理的【如何将数据工作表中的数据移至不同的工作表?】办公软件教程的全部内容,希望文章能够帮你了解办公软件教程如何将数据工作表中的数据移至不同的工作表?。 如果觉得互联网集市办公软件教程内容还不错,欢迎将互联网集市网站推荐给好友。
办公教程备注
版权声明:本文内容由互联网用户贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
办公教程手机端
扫描二维码推送至手机访问。