ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

求教,如何用VBA代码设置EXCLE的页边距

[复制链接]

TA的精华主题

TA的得分主题

发表于 2006-3-11 16:57 | 显示全部楼层 |阅读模式
如何用VBA代码设置EXCLE的上、下、左、右的页边距,最好能有注释,谢谢高手们~!

TA的精华主题

TA的得分主题

发表于 2006-3-11 16:59 | 显示全部楼层
自己录制一个: 文件菜单---页面设置 的宏

TA的精华主题

TA的得分主题

 楼主| 发表于 2006-3-11 22:43 | 显示全部楼层
以下是引用[I]plxmm[/I]在2006-3-11 16:59:22的发言:[BR]自己录制一个: 文件菜单---页面设置 的宏
你理解错了,我的意思是说怎样写这些VBA代码,我要的是代码内容不是怎样录制宏,谢谢你的回复还望再指教~!

TA的精华主题

TA的得分主题

发表于 2006-3-12 21:47 | 显示全部楼层
以下是引用[I]ouboy[/I]在2006-3-11 22:43:29的发言:[BR]
以下是引用[I]plxmm[/I]在2006-3-11 16:59:22的发言:[BR]自己录制一个: 文件菜单---页面设置 的宏
你理解错了,我的意思是说怎样写这些VBA代码,我要的是代码内容不是怎样录制宏,谢谢你的回复还望再指教~!
通过录制宏,就可看到是如何设置页边距的代码了.

TA的精华主题

TA的得分主题

 楼主| 发表于 2006-3-13 00:03 | 显示全部楼层
录得如下代码,请帮忙注释,我不明白.LeftMargin = Application.InchesToPoints(0.78740157480315)后面的括号内容,是怎样的意思,我设为1时,左边距不是1,我设0.78740157480315左边距又等于1了,还有我要的是可以自己设置的,即A1=LeftMargin,B1=RightMargin,C1=TopMargin,D1=BottomMargin,当我在A1输入2时左边距是2,A2输入3时右边距是3,等等,还望再指教, With ActiveSheet.PageSetup .PrintTitleRows = "" .PrintTitleColumns = "" End With ActiveSheet.PageSetup.PrintArea = "" With ActiveSheet.PageSetup .LeftHeader = "" .CenterHeader = "" .RightHeader = "" .LeftFooter = "" .CenterFooter = "" .RightFooter = "" .LeftMargin = Application.InchesToPoints(0.78740157480315) .RightMargin = Application.InchesToPoints(0.78740157480315) .TopMargin = Application.InchesToPoints(0.393700787401575) .BottomMargin = Application.InchesToPoints(0.393700787401575) .HeaderMargin = Application.InchesToPoints(0.511811023622047) .FooterMargin = Application.InchesToPoints(0.511811023622047) .PrintHeadings = False .PrintGridlines = False .PrintComments = xlPrintNoComments .PrintQuality = 600 .CenterHorizontally = False .CenterVertically = False .Orientation = xlPortrait .Draft = False .PaperSize = xlPaperA4 .FirstPageNumber = xlAutomatic .Order = xlDownThenOver .BlackAndWhite = False .Zoom = 100 .PrintErrors = xlPrintErrorsDisplayed End With
[此贴子已经被作者于2006-3-13 0:05:05编辑过]

TA的精华主题

TA的得分主题

发表于 2006-3-13 20:10 | 显示全部楼层

TA的精华主题

TA的得分主题

 楼主| 发表于 2006-3-13 23:45 | 显示全部楼层

明白了,谢谢青山依旧你的帮忙,现在我总结下吧:LeftMargin = Application.InchesToPoints(0.78740157480315)括后里的内容是代表左边距的“英寸”,代表2厘米,如果要将左边距设为厘米就要用CentimetersToPoints()。例:Worksheets("Sheet1").PageSetup.LeftMargin = _Application.CentimetersToPoints(2) 将 Sheet1 的左页边距设为 2 厘米。

[em04]
[此贴子已经被作者于2006-3-14 0:00:30编辑过]

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2007-11-8 21:08 | 显示全部楼层
这样设置页边距运行速度太慢

TA的精华主题

TA的得分主题

发表于 2014-9-12 16:04 | 显示全部楼层
百佳 发表于 2007-11-8 21:08
这样设置页边距运行速度太慢

你有更好的方法?给我们分享下!!!我觉得最好不用工作表函数Application来设置,但是我也不知道其他方法。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-3-29 14:25 , Processed in 0.039328 second(s), 13 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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