自己写的一些Excel及WordVBA函数[原创]
1、将Excel当前工作表另存至桌面
Excel中有时一个工作簿中工作表特别多,需要快速单独存取其中一个,可用以下代码快速存至桌面
Sub 另存工作表到桌面()
Dim sh As Worksheet
Set sh = ActiveWorkbook.ActiveSheet
sh.Copy
ActiveWorkbook.SaveAs Filename:="C:\Users\Administrator\Desktop\" & sh.Name & ".xlsx"
ActiveWorkbook.Close
End Sub
2、word中图片大小批量修改
Sub 全局调整(hight As Double, width As Double)
Dim n
For n = To ActiveDocument.InlineShapes.Count
With ActiveDocument.InlineShapes(n)
'.Reset
.LockAspectRatio = msoFalse
.Height = hight / 0.0353
.width = width / 0.0353 End With
Next n
msg = MsgBox("图片调整完成!", , "提示")
End Sub Sub 单图调整(hight As Double, width As Double)
With Selection.InlineShapes()
.LockAspectRatio = msoFalse
.Height = hight / 0.0353
.width = width / 0.0353
End With
End Sub
3、word以excel为数据源进行批量数据替换
新建excel文件,在A列输入被替换的内容,B列输入替换后的内容,然后执行以下代码
Sub 批量替换(replace As Boolean) Dim dig As Object
Set dig = Application.FileDialog(msoFileDialogFilePicker)
With dig
.InitialFileName = "C:\Users\Roman\Desktop\"
.Filters.Add "Excel", "*.xls; *.xlsx; *.xlsm", End With
If dig.Show = - Then
FileDir = dig.SelectedItems() '"C:\Users\Roman\Desktop\点.xls" On Error Resume Next
Set xlApp = GetObject(, "Excel.Application") '判断Excel是否打开
If Err.Number <> Then
Set xlApp = CreateObject("Excel.Application") '创建EXCEL对象
xlApp.Visible = False '设置EXCEL对象可见
End If
Err.Clear
Set wk1 = xlApp.Workbooks.Open(FileDir) '打开工件簿文件
wk1.Visible = False '是否显示文件 '批量替换
Set sh = wk1.Sheets()
n =
Do
n = n +
Loop Until sh.Cells(n, ) = "" For i = To n
text1 = sh.Cells(i, ) '替换源
text2 = sh.Cells(i, ) '替换目标 Selection.Find.ClearFormatting
With Selection.Find
.Text = ""
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchKashida = False
.MatchDiacritics = False
.MatchAlefHamza = False
.MatchControl = False
.MatchByte = True
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Application.WindowState = wdWindowStateNormal
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = ""
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchKashida = False
.MatchDiacritics = False
.MatchAlefHamza = False
.MatchControl = False
.MatchByte = True
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = text1
.Replacement.Text = text2
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchKashida = False
.MatchDiacritics = False
.MatchAlefHamza = False
.MatchControl = False
.MatchByte = True
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute replace:=wdReplaceAll
Next i
xlApp.Quit
msg = MsgBox("替换完成!", , "提示")
End If
4、将文件夹中的Excel表格批量输出为pdf
Sub outPdf()
Dim myFile, myPath
myPath = ""
myFile = Dir(myPath & "*.xlsx")
Do While myFile <> ""
If myFile <> ThisWorkbook.Name Then
Workbooks.Open (myPath & myFile) With ActiveSheet.PageSetup
.PrintArea = "A1:L15" '//打印区域
.FitToPagesWide = '//页宽是一页
.FitToPagesTall = '//页高是一页
.PaperSize = xlPaperA4 '//纸张大小,pdf输出至桌面
.CenterVertically = True
.CenterHorizontally = True
.Zoom = ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:\Users\Roman\Desktop\" & ActiveSheet.Range("f5") & ".pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
True
End With End If
myFile = Dir
Loop
End Sub
-----------------------------------------------------------
转载请注明出处:https://www.cnblogs.com/implementer/
自己写的一些Excel及WordVBA函数[原创]的更多相关文章
- 浅谈Excel开发:六 Excel 异步自定义函数
上文介绍了Excel中的自定义函数(UDF ),它极大地扩展了Excel插件的功能,使得我们可以将业务逻辑以Excel函数的形式表示,并可以根据这些细粒度的自定义函数,构建各种复杂的分析报表. 普通的 ...
- [VBA]用一个简单例子说明如何在Excel中自定义函数
Excel中的函数无疑是强大的,但是再强大的战士也有他脆弱的脚后跟[1].这两天在使用Excel的时候遇到了一个需求,要在某一个单元格里面自动计算今天是星期几(如显示 Today is Tuesday ...
- Excel中choose函数的使用方法
你还在为Excel中choose函数的使用方法而苦恼吗,今天小编教你Excel中choose函数的使用方法,让你告别Excel中choose函数的使用方法的烦恼. 经验主要从四方面对Excel函数进行 ...
- Excel公式与函数——每天学一个
说明(2018-5-29 20:35:53): 1. 根据刘伟的视频讲解进行总结,网上讲Excel公式与函数的貌似就他讲的还不错.在他的微博里看到现在的照片胖了不少,不过还挺帅的,不再是以前那个小屌丝 ...
- Excel中Sumproduct函数的使用方法
1.sumproduct函数的含义 1 1.Sumproduct函数的适用范围,在给定的几组数组中,然后把数组间对应的元素相乘,最后返回乘积之和. 从字面上可以看出,sumproduct有两个英文单词 ...
- Excel中concatenate函数的使用方法
你还在为Excel中concatenate函数的使用方法而苦恼吗,今天小编教你Excel中concatenate函数的使用方法,让你告别Excel中concatenate函数的使用方法的烦恼. 经验主 ...
- 【图文】Excel中vlookup函数的使用方法
今天统计数据,用到了Excel中vlookup函数,第一次使用当然少不了百度,经过反复研究后,算是解决了问题,现整理成文档. 一.实现效果 Sheet1 Sheet2 注:上图中sheet1商品条 ...
- c# .Net :Excel NPOI导入导出操作教程之List集合的数据写到一个Excel文件并导出
将List集合的数据写到一个Excel文件并导出示例: using NPOI.HSSF.UserModel;using NPOI.SS.UserModel;using System;using Sys ...
- 【Excel 4.0 函数】REGISTER
REGISTER.ID 返回指定的 DLL 或 代码资源注册过的函数 ID.如果 DLL 或 代码资源没有注册,这个函数将会注册它们,并返回 注册ID. REGISTER.ID 可以用于工作表(不同于 ...
随机推荐
- perceptron感知机 mtalab
data=load('data.txt'); x=[data(:,1),data(:,2)]; y=data(:,3); k=length(y); %绘制散点图 for j=1:k if y(j)== ...
- Oracle shared server模式连接ORA-12519
设置了shared server连接,dispatcher进程和shared server进程都没有问题listener.ora文件配置如下:LSNR2= (DESCRIPTION= (ADD ...
- Android Proguard使用技巧
1.混淆后解码 ProGuard运行结束后,输出以下文件: dump.txt :描述.apk文件中所有类文件间的内部结构 mapping.txt:列出了原始的类,方法和字段名与混淆后代码间的映射.这个 ...
- php给图片加文字
在图片上加文字是论坛,博客,新闻网站上最喜欢用的功能,防止盗图.这里看看代码是如何实现的. 首先还是upload_image.php这个文件,注意这里的caption文本框中输入的内容最终会写到图片上 ...
- svg压缩工具svgo安装使用
svgo是基于node.js的插件,所以需要先安装node.js 1.安装完node.js后,打开node.js命令窗口,输入npm install -g svgo,安装成后会出现下边的内容 2.对s ...
- linux使用秘钥登录(禁用root密码登录)
目的:为了巩固线上外网服务器的安全,避免黑客攻击植入木马,初步决定禁用root密码登录(安全强度低),统一使用秘钥登录(4096位长度,安全性较高) 具体操作如下: 一.生成ssh秘钥: ssh-ke ...
- USDT/BTC/ETC/HT的解释
USDT 泰达币 泰达币(USDT)是Tether公司推出的基于稳定价值货币美元(USD)的代币Tether USD(下称USDT),1USDT=1美元,用户可以随时使用USDT与USD进行1:1兑换 ...
- xcode Aborting commit: '~/Pods' remains in tree-conflict 错误的解决办法
在网上找了很多, 最后找到一个比较简单有较的 filename: 是出错的文件的绝对路径: xcode会提示 然后开终端: 1:svn remove --force filename 2:svn re ...
- Ubuntu 编译出现 ISO C++ 2011 不支持的解决办法
问题 在编译时出现如下error: error:This file requires compiler and library support for the ISO C++ 2011 standar ...
- CSP 试题编号201803-1 Java实现
import java.util.Scanner; public class Main{ public static void main(String[] args) { Scanner input ...