无忧启动论坛

标题: excel打印格式设置求助 [打印本页]

作者: zhoubin    时间: 昨天 11:37
标题: excel打印格式设置求助
每月都要打印不同的excel工作簿,工作簿格式相同,只是单元格数据不同,每次手动设置工作表格式,都是重复的劳动,怎么操作一下,工作簿自动调整行高列宽等动作,要启用宏吗,我不会,知道这里高手多,给指点一下,谢谢

作者: zhoubin    时间: 昨天 11:38
怎么启用宏,我也不会,高手给说一下。
作者: dayeye    时间: 昨天 11:43
先弄好格式,给填数据的。
作者: zhoubin    时间: 昨天 11:48
有没有更好的办法,数据是从报表网站导下来的,只是调整格式,打印一下
作者: ylbf    时间: 昨天 12:00
让有模板的excel读取报表网站下载下来的数据,加载到打印的模板文件,可以借助PowerQuery等等,也可以简单的从文件导入然后做排版。

作者: ohte    时间: 昨天 12:09
自已录制一个宏,另存为启用宏的工作簿xlsm
下次打开,按ALT+F8运行宏
作者: cutebe    时间: 昨天 12:12
外部可用JS
_Sheet.Columns("C:D").ColumnWidth=20;        //列宽20
_Sheet.Columns("A:B").AutoFit;        //列宽自适应
_Sheet.Rows(5).RowHeight=30;        //行高30
_Sheet.Rows("6:7").AutoFit;        //行高自适应
作者: zhoubin    时间: 昨天 12:13
ohte 发表于 2026-2-4 12:09
自已录制一个宏,另存为启用宏的工作簿xlsm
下次打开,按ALT+F8运行宏

不会,给详细说一下呗,谢谢您
作者: zhoubin    时间: 昨天 12:26
cutebe 发表于 2026-2-4 12:12
外部可用JS
_Sheet.Columns("C:D").ColumnWidth=20;        //列宽20
_Sheet.Columns("A:B").AutoFit;        //列宽自 ...

要设置的很多,比如:列宽有1.88,有7.5的,行高:不同的工作表也不一样,且行高也不同,有22的,有18的,还有字体,打印区域,打印标题等设置
作者: ohte    时间: 昨天 12:42
本帖最后由 ohte 于 2026-2-4 12:48 编辑
zhoubin 发表于 2026-2-4 12:13
不会,给详细说一下呗,谢谢您

宏录制使用方法视频教程:bilibili.com/video/av947645936/

宏录制是自动化重复性任务的有效工具,特别适用于 Microsoft Excel 等支持 VBA(Visual Basic for Applications)的应用程序。以下是使用宏录制的详细步骤:

1.启用开发工具选项卡

打开 Excel,点击 文件 > 选项 > 自定义功能区。

在右侧的主选项卡列表中勾选 开发工具,然后点击 确定。

2.录制宏

在 开发工具 选项卡中,点击 录制宏。 输入宏的名称(首字符必须为字母,不能包含空格)。 可选择分配快捷键(建议使用 Ctrl + Shift 组合键以避免覆盖默认快捷键)。 选择保存位置(如“此工作簿”)。 可在说明框中输入宏的用途描述(可选)。

点击 确定 开始录制。

执行需要自动化的操作,例如格式化单元格、输入数据或应用公式。

完成后,点击 停止录制。

3.运行宏

使用快捷键:如果在录制时设置了快捷键,可直接按下运行。

使用宏对话框: 点击 开发工具 > 宏 或按 Alt + F8。 选择要运行的宏并点击 运行。



4.查看和编辑代码

按 Alt + F11 打开 VBA 编辑器。

在左侧项目窗口中找到对应模块,双击查看生成的代码。

可根据需要修改代码以实现更复杂的功能。

5.注意事项

宏无法撤销操作,建议在副本上测试运行。

确保启用宏安全性设置,并仅运行来自可信来源的宏。

通过以上步骤,您可以轻松录制和管理宏,从而提高工作效率。

作者: ppll2030    时间: 昨天 13:06
如果打印的格式都是固定的。那最简单的就是做好这一版然后锁定格式,最后把下载数据内容复制仅数值进去就可以了。
作者: ebaqiang    时间: 昨天 13:11
纯路过~顶起来!
作者: 狼人72105    时间: 昨天 13:15
你要是工作簿中含有多个表格,且表格的格式都是一样的,只是数据不同?这样的话,多简单,你自己要在工作簿中按crlt键,鼠标指向sheet1,向右拖移,就会生成一个格式相同的sheet2表格,清空其中数据,重新填写新的数据不就好了?
作者: 狼人72105    时间: 昨天 13:16
写宏命令,也可以。有点烦。
作者: wsdyleon    时间: 昨天 13:37
不是复制一个,改改数据不就好了,为什么一直要调整。
作者: a66    时间: 昨天 13:50
看看
作者: zhoubin    时间: 昨天 14:29
ohte 发表于 2026-2-4 12:42
宏录制使用方法视频教程:bilibili.com/video/av947645936/

宏录制是自动化重复性任务的有效工具,特 ...

感谢,我试一下,谢谢
作者: handsome_xiang    时间: 昨天 15:18
学习一下
作者: zhoubin    时间: 昨天 15:50
录了一段宏,竟然用不了,提示:编译错误:参数不可选,大佬帮我看看哪里错了,谢谢

打印设置 - 宏.txt

131.86 KB, 下载次数: 4, 下载积分: 无忧币 -2


作者: 邪恶海盗    时间: 昨天 16:00
我觉得吧,干活的速度不能太快,毕竟总有干不完的活...


二○二六年二月四日
作者: a583091790    时间: 昨天 16:08
做一个固定的模板就好了。
作者: cutebe    时间: 昨天 16:35
zhoubin 发表于 2026-2-4 12:26
要设置的很多,比如:列宽有1.88,有7.5的,行高:不同的工作表也不一样,且行高也不同,有22的,有18的 ...
  1. //设置表格格式.JS
  2. var xlsFile=WScript.Arguments(0);        //拖入表格文件

  3. var XlsApp = new ActiveXObject("Excel.Application");        //创建表格程序对象
  4. var _Books = XlsApp.Workbooks.open(xlsFile);        //打开表格文件(簿)
  5. var _Sheet = _Books.Worksheets(1);        //工作表

  6. XlsApp.Visible = 1;        //显示表格程序

  7. _Sheet.Columns(3).ColumnWidth=1.88;        //列宽1.88
  8. _Sheet.Columns(4).ColumnWidth=7.5;        //列宽7.5
  9. _Sheet.Columns("A:B").AutoFit;        //列宽自适应
  10. _Sheet.Rows(1).RowHeight=22;        //行高22
  11. _Sheet.Rows(2).RowHeight=18;        //行高18
  12. _Sheet.Rows("5:8").AutoFit;        //行高自适应

  13. _Sheet.UsedRange.Font.Name='宋体';        //字体

  14. _Sheet.PageSetup.PrintTitleRows = "$1:$2";        //顶端标题行
  15. _Sheet.PageSetup.PrintTitleColumns = "$A:$E";        //左端标题列

  16. _Sheet.PageSetup.PrintArea = _Sheet.Range("A1:E35").Address;        //打印区域
复制代码

作者: kyowjg    时间: 昨天 21:21
这不就是先空表格搞好当模版,每次复制数据就行了吗?
作者: zhoubin    时间: 昨天 21:52
cutebe 发表于 2026-2-4 16:35

有一excel工作簿:决算.xls,工作簿里有15个工作表 ,
000工作表:打印区域选定为:A1:B17,无填充颜色;纵向打印;打印页边距:上2.5、下2.5、左1.4、右1.3
003工作表:打印区域选定为:A1:BF80,无填充颜色;横向打印;打印页边距:上1.9、下1.8、左1、右0.4CD列:列宽1.88EF列:列宽7.5G列至AR列:列宽1.88ASAT列:列宽7.5AU列至BE列:列宽1.88BF列:列宽9.86,其余列保持原列宽,不做调整;替换工作簿里:金额单位:?$为金额单位:万元;设置A3: BF80,宋体8号字;46行,行高调整为147行,行高调整为69880行,行高调整为14,其余行高保持原行高,不做调整;打印:将所有列调整为一页;打印顶端标题行13行($1:$3)。
其余002表以后,不再赘述. . . 谢谢


作者: 2314840143    时间: 昨天 21:53
围观
作者: djsh001    时间: 昨天 22:13
录个宏最省事了。

感谢各位高手!
作者: djsh001    时间: 昨天 22:17
看看这个。

日常工作中,有很多时候需要将Excel文件中的内容逐个粘贴到软件/网页中(填表操作),需要不停的复制-粘贴,该软件可以省略打开Excel文件和复制的操作,点击相应的复制按钮即可将所需数据复制到剪切板中。
操作要求:
1.需要在软件同级目录放置以_build.xlsx结尾的excle文件,若无法确定数据是否合适,请将所需数据粘贴到测试表格中运行,表格第一行为标题,标题会被直接读取到按钮标题中;
2.运行后界面“上一条”和“下一条”会逐行显示数据,复制:...按钮会将当前行的数据复制到剪贴板中,使用时直接粘贴即可。
注意:
1.该软件暂时还未适配xls文件,使用时请将文件另存为xlsx格式的文件;
2.软件退出后会将当前读取行数保存到用户目录下,不喜欢乱七八糟配置文件的请另寻高明。
软件及测试文件下载链接:
文件名称:万能表格复制助手 v0.6.zip
百度网盘分享链接: https://pan.baidu.com/s/1FEakoE4WFM5NxODs-UTkPQ
提取码: u3q5




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3