ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 414|回复: 0

[原创] TXT批量单独VBA制盘参考(1)

[复制链接]

TA的精华主题

TA的得分主题

发表于 2023-4-13 23:50 | 显示全部楼层 |阅读模式
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
Private Sub CommandButton1_Click() '处理表格全部 ————1
Application.ScreenUpdating = True
Dim EndRow As Single
Dim i&, j&, k&, m$
On Error Resume Next
ThisWorkbook.Sheets(17).Range("G1:I99").Select
Selection.ClearContents
ThisWorkbook.Sheets(17).Range("I1") = ThisWorkbook.Sheets(17).Range("a1")
ThisWorkbook.Sheets(17).Range("I1").Select
ThisWorkbook.Sheets(17).Range("I1").Replace What:=" ", Replacement:=""
ThisWorkbook.Sheets(17).Range("I1").Replace What:="普宁市大坝镇", Replacement:=""
ThisWorkbook.Sheets(17).Range("I1").Replace What:="大坝镇", Replacement:=""
ThisWorkbook.Sheets(17).Range("I1").Replace What:="教师", Replacement:=""
ThisWorkbook.Sheets(17).Range("I1").Replace What:="初级中学", Replacement:="中学"
ThisWorkbook.Sheets(17).Range("I1").Replace What:="学校小学", Replacement:="小学"
ThisWorkbook.Sheets(17).Range("I1").Replace What:="小学学校", Replacement:="小学"
ThisWorkbook.Sheets(17).Range("I1").Replace What:="学校", Replacement:="小学"
ThisWorkbook.Sheets(17).Range("I1").Replace What:="月个**", Replacement:="月个人所得税"
ThisWorkbook.Sheets(17).Range("I1").Replace What:="个人**", Replacement:="个人所得税"
ThisWorkbook.Sheets(17).Range("I1").Replace What:="个税*", Replacement:="个人所得税"
ThisWorkbook.Sheets(17).Range("I1").Replace What:="职业*", Replacement:="职业年金"
ThisWorkbook.Sheets(17).Range("I1").Replace What:="月社保职业*", Replacement:="职业年金"
ThisWorkbook.Sheets(17).Shapes.Range(Array("TextBox 1")).Select
Selection.Text = ThisWorkbook.Sheets(17).Range("I1").Text
For i = 250 To 1 Step -1
   If ThisWorkbook.Sheets(17).Cells(i, 4).Text Like "0" Or ThisWorkbook.Sheets(17).Cells(i, 4).Text Like "" Then
  ThisWorkbook.Sheets(17).Cells(i, 4).EntireRow.Delete
   End If
Next
For i = 250 To 1 Step -1
      If ThisWorkbook.Sheets(17).Cells(i, 3).Text Like "62*" Or ThisWorkbook.Sheets(17).Cells(i, 3).Text Like "8001000*" Then
      Else
       ThisWorkbook.Sheets(17).Cells(i, 3).EntireRow.Delete
       End If
   Next
Columns("D:D").NumberFormatLocal = "G/通用格式"
Columns("A:D").Select
Selection.Replace What:=" ", Replacement:=""
j = Application.WorksheetFunction.Count(ThisWorkbook.Sheets(17).[D:D])
For k = 1 To j
Cells(k, 1) = k
Next k
m = Application.WorksheetFunction.Sum(ThisWorkbook.Sheets(17).[D:D])
ThisWorkbook.Sheets(17).Cells(8, 7) = j
ThisWorkbook.Sheets(17).Cells(8, 8) = m
ThisWorkbook.Sheets(17).Cells(7, 7) = "人数"
ThisWorkbook.Sheets(17).Cells(7, 8) = "金额"
ThisWorkbook.Sheets(17).Range("I1").Select
Selection.ClearContents
End Sub       
Private Sub CommandButton2_Click() '通过生成TXT ———————— 2
    Dim lngRow          As Long
    Dim lngCol          As Long
    Dim strContent      As String
    Dim objSheet        As Worksheet
    Dim l&, m$
    On Error Resume Next
'MkDir ThisWorkbook.Path & "\导出TXT"
'n = Split(ActiveWorkbook.Name, ".")(0)
l = ThisWorkbook.Sheets(17).Shapes.Range(Array("TextBox 1")).TextFrame.Characters.Caption
Open ThisWorkbook.Path & "\4TXT\" & l & ".txt" For Output As #1
m = Application.WorksheetFunction.Count(ThisWorkbook.Sheets(17).[A:A])
    For lngRow = 1 To m - 1
        strContent = ThisWorkbook.Sheets(17).Cells(lngRow, 1).Text & "|" & ThisWorkbook.Sheets(17).Cells(lngRow, 2).Text & "|" & ThisWorkbook.Sheets(17).Cells(lngRow, 3).Text & "|" & ThisWorkbook.Sheets(17).Cells(lngRow, 4).Text
        strContent = strContent & vbCrLf
    Print #1, strContent;
     Next
    strContent = ThisWorkbook.Sheets(17).Cells(m, 1).Text & "|" & ThisWorkbook.Sheets(17).Cells(m, 2).Text & "|" & ThisWorkbook.Sheets(17).Cells(m, 3).Text & "|" & ThisWorkbook.Sheets(17).Cells(m, 4).Text
    Print #1, strContent;
    Close #1
End Sub       
Private Sub CommandButton3_Click() '复制数据——————3
ThisWorkbook.Sheets(17).Range("G8:H8").Select
Selection.Copy
End Sub       


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

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-17 15:58 , Processed in 0.034346 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表