楼主: sluojianfei
2322 1

[程序分享] EXCEL xml+VBA智能数据拆分,部分自己用到的自定义函数,分享给大家 [推广有奖]

  • 0关注
  • 0粉丝

已卖:41份资源

本科生

49%

还不是VIP/贵宾

-

威望
0
论坛币
420 个
通用积分
0.0253
学术水平
0 点
热心指数
2 点
信用等级
0 点
经验
2062 点
帖子
75
精华
0
在线时间
94 小时
注册时间
2014-6-1
最后登录
2019-5-9

楼主
sluojianfei 在职认证  学生认证  发表于 2016-6-18 14:06:37 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
复制粘贴时删除模块中的强制声明语句,代码显示有点乱,需要的直接下载1楼的txt附件















Sub 子样本工作表拆分()
Application.DisplayAlerts = False
On Error Resume Next
Dim tit As Range, rngs As Range, subrng As RangeDim pah$, ar, rng As Range, rng1 As Range, numrow%
Dim rngg As Range, wb As Workbook
Dim wsname$, cel As Range, savename$
wsname = ActiveSheet.Name
Set tit = Application.InputBox("请选择表头区域", "表头", , , , , , 8)
If tit Is Nothing Then End
Set rngs = Application.InputBox("请选择拆分区域", "数据", , , , , , 8)
If rngs Is Nothing Then End
Set subrng = Application.InputBox("请选择拆分列", "拆分列", , , , , , 8)
If subrng Is Nothing Then End
Application.FileDialog(msoFileDialogFolderPicker).Title = "保存路径"
Application.FileDialog(msoFileDialogFolderPicker).Show
pah = Application.FileDialog(msoFileDialogFolderPicker).SelectedItems(1) & "\"
If pah = "" Then End
Set d = CreateObject("scripting.dictionary")
Application.ScreenUpdating = False
For Each rng In Intersect(rngs, subrng.EntireColumn)
    If rng.Value <> "" Then d(rng.Value) = ""
Next
For Each ar In d.keys
    Set rng1 = subrng.EntireColumn.Find(ar)
    numrow = WorksheetFunction.CountIf(Intersect(rngs, Columns(subrng.Column)), ar)
    Set rngg = Intersect(rng1.EntireRow, rngs).Range("a1").Resize(numrow, rngs.Columns.Count)

    savename = WorksheetFunction.Substitute(ar, "/", "-")
    Set wb = Workbooks.Open(pah & savename)
    If wb Is Nothing Then Set wb = Workbooks.Add
    wb.Worksheets.Add.Name = wsname
    With wb.Worksheets(1)
        Set cel = .Range("a" & tit.Rows.Count + 1)
        .Activate
        .Name = wsname
        tit.Copy
        .Range("a1").PasteSpecial xlPasteValues
        .Range("a1").PasteSpecial xlPasteFormats
        rngg.Copy
        cel.PasteSpecial xlPasteValues
        cel.PasteSpecial xlPasteColumnWidths
        cel.PasteSpecial xlPasteFormats
    End With
    wb.SaveAs pah & savename
    wb.Close
    Set wb = Nothing
    'If Err.Number > 0 Then MsgBox "数据处理不合规,请确定后尝试!", vbOKOnly, "错误提示": Exit Sub
Next
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub



二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:EXCEL 自定义函数 xcel exce VBA 工作表 EXCEL Error 智能 样本

数据拆分VBA程序演示OFFICE2007以上版本.rar
下载链接: https://bbs.pinggu.org/a-2052840.html

172.5 KB

内含使用方法

本附件包括:

  • 数据拆分VBA程序演示OFFICE2007以上版本.xlsm

沙发
sluojianfei 在职认证  学生认证  发表于 2016-6-18 14:11:02
不知为何上述粘贴的代码显示有点乱,特地上传txt文档

代码.txt

2.04 KB

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-9 17:39