Board logo

标题: [文本处理] 求批处理方法批量设置WORD页眉、页脚为0.5 [打印本页]

作者: qd2024    时间: 2023-8-4 08:18     标题: 求批处理方法批量设置WORD页眉、页脚为0.5

有大量WORD文件需要设置页眉、页脚为0.5CM,求批处理命令,需要同时处理所有子目录下文件。
当前使用Microsoft® Word 2016MSO (版本 2307 Build 16.0.16626.20110) 32 位 版本。
谢谢。
作者: wanghan519    时间: 2023-8-4 09:38

不知道理解的对不对,用powershell
  1. $wd = New-Object -ComObject word.application
  2. dir *.doc* | % {$d=$wd.Documents.Open($_.FullName);$d.PageSetup.HeaderDistance=42.5;$d.PageSetup.FooterDistance=42.5;$d.Save();$d.Close()}
  3. $wd.Quit()
复制代码

作者: qd2024    时间: 2023-8-4 09:50

回复 2# wanghan519
辛苦 但是没有成功,我上传了一些例子 帮忙看一下 感谢

链接:https://pan.baidu.com/s/1cFG_bSGz405NU2RWaKdEfg?pwd=8yp6
提取码:8yp6
--来自百度网盘超级会员V9的分享
作者: wanghan519    时间: 2023-8-4 09:59

本帖最后由 wanghan519 于 2023-8-4 10:00 编辑

回复 3# qd2024


    上面的是页眉页脚那个距离,如果是指页边距,第二句应该改成
  1. dir *.doc* | % {$d=$wd.Documents.Open($_.FullName);$d.PageSetup.TopMargin=14.2;$d.PageSetup.BottomMargin=14.2;$d.Save();$d.Close()}
复制代码

作者: qd2024    时间: 2023-8-4 10:30

回复 4# wanghan519


是的 我是要修改页眉和页脚  但是无论在根下 还是子目录  文件都没有被 更改
作者: wanghan519    时间: 2023-8-4 11:06

本帖最后由 wanghan519 于 2023-8-8 03:46 编辑

回复 5# qd2024


    加上了处理子文件夹,改了数值
  1. $wd = New-Object -ComObject word.application
  2. dir -Recurse *.doc* | % {$d=$wd.Documents.Open($_.FullName);$d.PageSetup.HeaderDistance=14.2;$d.PageSetup.FooterDistance=14.2;$d.Save();$d.Close()}
  3. $wd.Quit()
复制代码

作者: Batcher    时间: 2023-8-4 11:14

回复 5# qd2024


    你用什么系统测试的,Win7? Win10? Win11? 看看你系统里面的PowerShell版本是什么
作者: qd2024    时间: 2023-8-4 20:35

回复 7# Batcher


    Windows PowerShell
版权所有(C) Microsoft Corporation。保留所有权利。

安装最新的 PowerShell,了解新功能和改进!https://aka.ms/PSWindows

PS C:\Users\ykhqz>


用的是Win 11
作者: qd2024    时间: 2023-8-4 20:39

回复 6# wanghan519


    测试后 文件没有被修改 麻烦帮忙看看什么原因
作者: wanghan519    时间: 2023-8-5 08:50

本帖最后由 wanghan519 于 2023-8-5 10:41 编辑

回复 9# qd2024


    应该不是32位的问题,把报错信息发出来吧。呃,该不会没有cd到目标文件夹就直接运行代码了,那罪过就大了,可能把用户目录下的docx都改了。。。




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2