【007】Excel宏编程相关封装模块(筛选、复制、黏贴)_001_#VBA
Excel宏编程相关封装模块-第1期
- 1. 说明
- 2. 代码
- 2.1 筛选相关内容,且复制筛选内容
- 2.2 区域内容复制
- 2.3 黏贴
1. 说明
该模块是根据Excel宏编程官网及录制时相关操作进行编写的,如有不足之处,望批评指正!!!
2. 代码
2.1 筛选相关内容,且复制筛选内容
筛选内容前,需将相应表格置于活动表格
需要同时筛选一个内容
Function AssistFileSelVol(Filename, SheetName, Item, Step, T)
'选择对应的工步并进行单步复制 _ 文件名_工作薄名_第几列进行筛选_工步序号_按需要切换列数Windows(Filename).ActivateSheets(SheetName).SelectIf T = 1 ThenActiveSheet.Range("$A$1:$L$1").AutoFilter Field:=Item, Criteria1:=StepRange(Columns(8), Columns(9)).Select: Selection.CopyElseIf T = 0 ThenActiveSheet.Range("$A$1:$L$1").AutoFilter Field:=Item, Criteria1:=StepRange(Columns(9), Columns(9)).Select: Selection.CopyElseIf T = 3 ThenRange(Columns(3), Columns(3)).Select: Selection.CopyElseIf T = 5 ThenActiveSheet.Range("$A$1:$L$1").AutoFilter Field:=Item, Criteria1:=StepRange(Columns(5), Columns(5)).Select: Selection.CopyEnd IfEnd FunctionFunction AssistSelVol(SheetName, Item, Step, T)
'选择对应的工步并进行单步复制 _ 工作薄名_第几列进行筛选_工步序号_按需要切换列数Sheets(SheetName).SelectActiveSheet.Range("$A$1:$L$1").AutoFilter Field:=Item, Criteria1:=StepIf T = 1 ThenRange(Columns(8), Columns(9)).SelectSelection.CopyElseRange(Columns(9), Columns(9)).SelectSelection.CopyEnd IfEnd Function
需要同时筛选两个内容
Function AssistFileTwoSelVol(Filename, SheetName, Item, Two_Endto, T)
'选择对应的工步并进行两步复制 _ 文件名_工作薄名_第几列进行筛选_多个工步序号_按需要切换列数Windows(Filename).ActivateSheets(SheetName).SelectDim DQ41 As String, DQ42 As StringDQ41 = Two_Endto(1)DQ42 = Two_Endto(2)ActiveSheet.Range("$A$1:$L$41500").AutoFilter Field:=2, Criteria1:=DQ41, _Operator:=xlOr, Criteria2:=DQ42If T = 1 ThenRange(Columns(8), Columns(9)).SelectSelection.CopyElseRange(Columns(9), Columns(9)).SelectSelection.CopyEnd IfEnd FunctionFunction AssistTwoSelVol(SheetName, Item, Two_Endto, T)
'选择对应的工步并进行两步复制 _ 工作薄名_第几列进行筛选_多个工步序号_按需要切换列数Sheets(SheetName).SelectDim DQ41 As String, DQ42 As StringDQ41 = Two_Endto(1)DQ42 = Two_Endto(2)ActiveSheet.Range("$A$1:$L$41500").AutoFilter Field:=2, Criteria1:=DQ41, _Operator:=xlOr, Criteria2:=DQ42If T = 1 ThenRange(Columns(8), Columns(9)).SelectSelection.CopyElseRange(Columns(9), Columns(9)).SelectSelection.CopyEnd IfEnd Function
因需同时筛选三个内容,故有数组的形式进行内容输入,使用时逐一赋值
Function AssistFileMultiSelVol(Filename, SheetName, Item, Third_Endto, T)
'选择对应的工步并进行三步复制 _ 文件名_工作薄名_第几列进行筛选_多个工步序号_按需要切换列数Windows(Filename).ActivateSheets(SheetName).SelectDim DQ41 As String, DQ42 As String, DQ43 As StringDQ41 = Third_Endto(1)DQ42 = Third_Endto(2)DQ43 = Third_Endto(3)ActiveSheet.Range("$A$1:$L$59464").AutoFilter Field:=Item, Criteria1:=Array( _DQ41, DQ42, DQ43), Operator:=xlFilterValuesIf T = 1 ThenRange(Columns(8), Columns(9)).SelectSelection.CopyElseRange(Columns(9), Columns(9)).SelectSelection.CopyEnd IfEnd FunctionFunction AssistMultiSelVol(SheetName, Item, Third_Endto, T)
'选择对应的工步并进行三步复制 _ 工作薄名_第几列进行筛选_多个工步序号_按需要切换列数Sheets(SheetName).SelectDim DQ41 As String, DQ42 As String, DQ43 As StringDQ41 = Third_Endto(1)DQ42 = Third_Endto(2)DQ43 = Third_Endto(3)ActiveSheet.Range("$A$1:$L$59464").AutoFilter Field:=Item, Criteria1:=Array( _DQ41, DQ42, DQ43), Operator:=xlFilterValuesIf T = 1 ThenRange(Columns(8), Columns(9)).SelectSelection.CopyElseRange(Columns(9), Columns(9)).SelectSelection.CopyEnd IfEnd Function
2.2 区域内容复制
单个数据进行复制
Function AssistFileCopy(Filename, SheetName, H, l)
'将所选择的数据进行复制 _ 文件名_工作薄名_,,所在位置Windows(Filename).ActivateSheets(SheetName).SelectCells(H, l).SelectSelection.CopyEnd FunctionFunction AssistCopy(SheetName, H, l)
'将所选择的数据进行复制 _ 工作薄名_,,所在位置Sheets(SheetName).SelectCells(H, l).SelectSelection.CopyEnd Function
范围性数据选中进行复制
Function AssistFileRangeCopy(Filename, SheetName, H1, L1, H2, L2)
'将所选择的范围数据进行复制 _ 文件名_工作薄名_ ,,首位_,,末位Windows(Filename).ActivateSheets(SheetName).SelectRange(Cells(H1, L1), Cells(H2, L2)).SelectSelection.CopyEnd FunctionFunction AssistRangeCopy(SheetName, H1, L1, H2, L2)
'将所选择的范围数据进行复制 _ 工作薄名_ ,,首位_,,末位Sheets(SheetName).SelectRange(Cells(H1, L1), Cells(H2, L2)).SelectSelection.CopyEnd Function
2.3 黏贴
无其他操作,直接进行黏贴
Function AssistFilePaste(Filename, SheetName, H, l)
'将所选择的数据进行黏贴 _ 文件名_工作薄名_,,所在位置Windows(Filename).ActivateSheets(SheetName).SelectCells(H, l).SelectActiveSheet.PasteEnd FunctionFunction AssistPaste(SheetName, H, l)
'将所选择的数据进行黏贴 _ 工作薄名_,,所在位置Sheets(SheetName).SelectCells(H, l).SelectActiveSheet.PasteEnd Function
对复制内容进行转置黏贴
Function AssistFilePasteTrans(Filename, SheetName, H, l)
'将所选择的数据进行转置黏贴 _ _ 文件名_工作薄名_,,所在位置Windows(Filename).ActivateSheets(SheetName).SelectCells(H, l).SelectSelection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _False, Transpose:=TrueEnd FunctionFunction AssistPasteTrans(SheetName, H, l)
'将所选择的数据进行转置黏贴 _ 工作薄名_,,所在位置Sheets(SheetName).SelectCells(H, l).SelectSelection.PasteSpecial Paste:=xlPasteAll, Operation:=xlNone, SkipBlanks:= _False, Transpose:=TrueEnd Function
参考地址:https://docs.microsoft.com/zh-cn/office/client-developer/excel/excel-home?redirectedfrom=MSDN
该代码仅供学习,如商业转载请联系本人,非商业转载请注明出处
【007】Excel宏编程相关封装模块(筛选、复制、黏贴)_001_#VBA相关推荐
- 【016】Excel宏编程的交互解析(Cells)_002_#VBA
Cells 1 交互元件 Cells 解析 1.1 元素解读 1.2 操作后缀 2 对列进行编号 3 说明 1 交互元件 Cells 解析 1.1 元素解读 Cells(RowIndex,Column ...
- excel 宏编程_在 Excel 中使用 Python 开发宏脚本
点击上方蓝字,每天一起学 Python,文末领送书福利 文 | varlemon 编辑 | EarlGrey 推荐 | 编程派公众号(ID:codingpy) 之前发文介绍过一个叫GridStudio ...
- EXCEL宏编程纪念
不久前被叫去编写宏,这EXCEL宏真是麻烦! 可能以后不会再遇到有编写宏的经历了,故而贴出来以做个纪念: Sub direct_Price() ' 'query_dir_volume '宏由 颜清国编 ...
- makefile使用宏及用法$(宏标识符) $(cc)_宏编程的艺术
微信限制:不能放置链接,代码样式比较奇怪,发布后不能更新... 推荐 阅读原文: 写在前面 之前写过几篇关于 C/C++ 宏 (macro) 和 C++ 元编程 (metaprogramming) 的 ...
- excel子表与母表筛选_滚动浏览Excel表中的筛选器项目
excel子表与母表筛选 To see specific data in an Excel Table, you can select an item from the drop down filte ...
- WPS JS宏编程是什么
WPS JS宏编程是一种基于JavaScript语言的自动化办公技术,可以通过编写脚本来自动化执行一些重复性的任务,例如格式化文本.生成报表.处理数据等.本教程将介绍WPS JS宏编程的基本概念.语法 ...
- python处理excel文件的模块_python处理Excel文件的几个模块
在python中简单地处理excel文件,有几个相关的模块,各有千秋,本文将不定时收录. Python Excel网站收集了关于python处理excel文件的各种信息. [注意]使用python处理 ...
- python不能处理excel文件-python处理Excel文件的几个模块
在python中简单地处理excel文件,有几个相关的模块,各有千秋,本文将不定时收录. Python Excel网站收集了关于python处理excel文件的各种信息. [注意]使用python处理 ...
- 荣耀发布标志性旗舰智能手机Magic3系列;环旭电子为小型物联网设备推出双核蓝牙5.0天线封装模块 | 全球TMT...
新品 荣耀发布全新荣耀Magic3系列手机,这是标志性旗舰智能手机系列,包括荣耀Magic3.荣耀Magic3 Pro和荣耀Magic3至臻版这三款手机.耀Magic系列采用同类最佳多主摄计算摄影技术 ...
- 用EXCEL宏编写坐标转换
用EXCEL宏编写坐标转换* 网上查了很多坐标转换代码和各种参数,很多不一致或不完整,自编VBA坐标转换,进行代码验证,和专业的坐标转换软件比较,如常见的笑脸坐标转换软件COORD GM和中海达的Co ...
最新文章
- 给大家介绍一位中科院师兄,读研时通过实习和比赛收入五十万
- LeetCode OJ:Pascal's TriangleII(帕斯卡三角II)
- ant 使用常见问题
- NS之VGG(Keras):基于Keras的VGG16实现之《复仇者联盟3》灭霸图像风格迁移设计(A Neural Algorithm of Artistic Style)
- 深入Java -JVM 垃圾回收
- 【BZOJ4300】—绝世好题(二进制dp)
- 工作篇-佛山三水恒大-2020.10.23
- 透明怎么弄_玻璃球里的花纹是怎么弄进去的?谜终于解开了!
- Fabric1.4源码解析:Peer节点启动过程
- vfp连接高拍仪难不难,只看这篇就能搞定
- cad2016中选择全图字体怎么操作_CAD镜像怎么用,你会吗?
- 实体店为什么难以留住客户?商业模式值得尝试
- Linux 部署 nginx(下载、安装、启动)
- 内网渗透-端口转发隧道技术
- 新版H5小游戏管理平台系统+适用于商家活动
- 网狐大联盟机器管理工具编译与使用
- AcWing 692. G巴士计数 差分+前缀和
- 无缝衔接的人会遭报应吗_伤害这几种人,你的报应会来得快来得狠
- 明解C语言入门篇练习题第十三章
- 西电李航 操作系统课程笔记 day8 Implementation of File system
热门文章
- 计算机应用基础试题答案截图,《计算机应用基础》试题二
- React-注册事件
- linux命令批量修改文件名称
- EPSG:900913 与 EPSG:4326 转换方法
- Premiere 输出视频
- 自家主机建云服务器_用云主机还是自己建服务器好
- 图片(img)alt属性标签怎么写
- 我的世界服务器怎么修改名称,我的世界端游怎么改名字
- [Python黑帽] 二.Python能做什么攻击?正则表达式、网络爬虫和套接字通信入门
- 计算机中丨kb表示的字节数是,5mb是多少kb?计算机中5mb是多少字节?2MB表示多少字节?4mb是多少字节...