几个实用的Excel 宏代码


来源:高中英语教学交流
发布时间:2013-03-22 10:41:00
查看次数:

内容提要:   有时需要在Excel中将某个多行多列的区域转换到一列中,下面的VBA代码可以实现这个目的。

Excel 宏 按列拆分

在一个工作表中是许多的公司订单记录,如何将它按公司名分拆成一个个工作表,用VBA实现相当便捷。以下是演试:
原始工作簿:
 
运行VBA代码后的工作簿:
 
代码如下:

  1. 需要先把数据按照分拆的那一列字段排序
  2. 如果你想应用在你的表格中,只需将所有resize(1,3)中的3修改,改成你的表格的列数。如果你总表有8列就改成resize(1,8)即可
  3. 如果你想根据表格的第一列拆分,需要把Sheet1.Cells(i, 2) <> Sheet1.Cells(i - 1, 2)和sh.Name = Sheet1.Cells(i, 2)的2换成1

Sub s()
  Application.ScreenUpdating = False
  Dim sh As Worksheet, i As Integer
    For i = 2 To Sheet1.[a65536].End(3).Row
      If Sheet1.Cells(i, 2) <> Sheet1.Cells(i - 1, 2) Then
        Worksheets.Add after:=Worksheets(Sheets.Count)
          Set sh = ActiveSheet
            sh.Name = Sheet1.Cells(i, 2)
            sh.Range("a1").Resize(1, 3).Value = Sheet1.Range("a1").Resize(1, 3).Value
            sh.Range("a65536").End(3).Offset(1, 0).Resize(1, 3).Value = Sheet1.Cells(i, 1).Resize(1, 3).Value
          Else
            sh.Range("a65536").End(3).Offset(1, 0).Resize(1, 3).Value = Sheet1.Cells(i, 1).Resize(1, 3).Value
      End If
    Next i
Application.ScreenUpdating = True
End Sub

第1页 第2页 第3页

相关文章
·解决windows7 保存文件"权限"问题11-22
·Windows 7系统的硬盘安装方法05-13
·多列数据区域转换成一列VBA代码03-05
·笔记本小键盘切换的问题08-13
·ASP获取真正的IP地址 兼容代理服务器02-09
·Office2003 Word/Excel等双击默认打开方式修复12-12
·全国教师职称计算机考试应试技巧03-11
·WDS无线组网、无线桥接的应用01-13
·几个实用的Excel 宏代码03-22
·安卓手机因软件安装失败解决方法06-19
最新文章
阅读排行