怎么用vba把exl中数据按关键字分解成不同的表格文件,并用关键字命名

怎么用vba把exl中数据按关键字分解成不同的表格文件,并用关键字命名,第1张

Sub fenlei()

Dim sh1, sh2, sh3, sh3 As Worksheet

Set sh1 = Sheet1

'分别将后面三表起名如下

Set sh2 = Sheets("安阳")

Set sh3 = Sheets("山东")

Set SH4 = Sheets("潍坊")

m = Sheet1.Range("C65536").End(xlUp).Row

m2 = Sheet2.Range("C65536").End(xlUp).Row

m3 = Sheet3.Range("C65536").End(xlUp).Row

m4 = Sheet4.Range("C65536").End(xlUp).Row

With Sheet1

For i = 1 To m

If .Cells(i, 1) = "安阳利宝经贸有限公司" Then

For j = 1 To 6

sh2.Cells(m2 + 1, j) = sh1.Cells(i, j)

Next j

End If

If .Cells(i, 1) = "山东``" Then'自己写全

For j = 1 To 6

sh3.Cells(m2 + 1, j) = sh1.Cells(i, j)

Next j

End If

If .Cells(i, 1) = "潍坊````" Then

For j = 1 To 6

sh4.Cells(m2 + 1, j) = sh1.Cells(i, j)

Next j

End If

Next i

End With

End Sub

附件中的excel的作用是,将指定的某个打开的工作薄中的一张大表,按指定的一列中不同的关键字拆分到多个工作表,或是多个工作薄中。切记一点的是,需要拆分的工作表,要打开着。否则会出错。

以下所说的关键字,其实就是指定区域所含的不重复单元格。

说明:1、点击上面的按钮后,首选要输入需要拆分的工作表所在的工作薄名字,可以是本 

         工作薄名字,也可以是其他打开的工作薄的名字,这个要看你想拆分的工作表具

         体在哪个工作薄中了,记住要包含工作薄的后缀名。

      2、第二步请输入第一步中指定工作薄中需要拆分的工作表的名称。

      3、第三步,请输入需要拆分的工作表中拆分依据所在的列号。

      4、第四步,请输入需要拆分的工作表中拆分依据开始的行号。

      5、第五步,请输入需要拆分的工作表中拆分依据结束的行号。

以上5步要填的内容,可以事先填在本表H1到H5的单元格中。

      6、第六步,需要选择是只拆分指定的关键字,还是将拆分依据中所有的关键字都拆  

         分。如果需要指定关键字拆分,那么就会d出选择关键字的对话框。如果所选择

         的关键字在依据区域全都没有,刚会提示是否需要重新选择。如果所选择的关键 

         字中只有一部分在依据区域中有,那么只拆分在拆分依据中的有关键字。

      7、如果第六步,关键字选择完毕,那么第七步就需要选择是拆分到源工作薄的新建

         工作表中,还是拆分到源工作薄所在目录下面的新建工作薄中。如果选择拆分到

         源工作薄的新建工作表中,那么就会先删除源工作薄中以关键字命名的工作表,

         然后再将拆分的各个工作表以关键字命名。如果选择拆分到新建工作薄中,那么

         接下来要选择新建工作薄命名方式,然后再选择工作表的命名方式。

      8、最后一点,如果要只拆分部分关键字,那么关键字一定要事先写在该工薄中,否

         则没法取得关键字。不管是拆分部分关键字还是全部关键字,关键字所在单元格

         不能是用公式得到的字符。          

ps:总表中拆分依据所在列的内容最好为纯文本,不要用公式。并且如果要拆分的大表中如果有很多公式,打开很慢的话,建议先在大表中把公式计算模式改为手动计算。

VBA中 的关键字 不能作为标识符来使用

常用的关键字如下( 摘自博客 : https://blog.csdn.net/hpdlzu80100/article/details/80529009 )


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/sjk/10699198.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存