无忧启动论坛

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

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

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

作者: ohte    时间: 7 小时前
自已录制一个宏,另存为启用宏的工作簿xlsm
下次打开,按ALT+F8运行宏
作者: cutebe    时间: 7 小时前
外部可用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    时间: 7 小时前
ohte 发表于 2026-2-4 12:09
自已录制一个宏,另存为启用宏的工作簿xlsm
下次打开,按ALT+F8运行宏

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

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

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

打印设置 - 宏.txt

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


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


二○二六年二月四日
作者: a583091790    时间: 3 小时前
做一个固定的模板就好了。
作者: cutebe    时间: 3 小时前
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;        //打印区域
复制代码





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