需要一些帮助。尝试构建一个工具,该工具获取180页文档并读取页码,并将该单页实例保存为新文件和递增文件名。我已经完成了迭代和文件处理,但我还没有找到从word中选择单个页面的方法。这可能不是最好的方法,但它的工作与所有其他尝试都失败了。我甚至尝试使用建议的方法将页码添加到每页的页脚,但它不能使用现有的文档...只是新文档。到目前为止,这是我所拥有的,如果有人可以挑选和拉出这些建议的东西,我会很感激。
作为while循环中的旁注,即;每页我希望它只做一个当前页面的保存实例。现在它做了一些不同的事情,只是复制整个事情,以确保循环过程有点功能。
[int] $c = 1
[int] $total = 2
#$colFiles = gci("C:\xx\xx\Documents\xx\xx\*.docx")
#$filebase = "FILENAME"
$objWord = New-Object -comobject Word.Application
$objWord.Visible = $True
$template = "C:\x\x\Documents\xx\xx.docx"
$doc = $objWord.Documents.Open($template)
#$objDoc = $objWord.Documents.Open("C:\xx\xx\xx\xx\" + $objFile.Name)
$filebase = "xx.docx"
$path = "C:\Users\username\Documents\vbscripting\"
$original = $path + $filebase
$baseFile = $filebase + "_" + $c + ".docx"
while($total -gt $c)
{
$filename = $path + $filebase + "_" + $c + ".docx"
$destination = "C:\xx\xx\Documents\xx\xx_" + $c + ".docx"
Copy-Item -Path "C:\xx\xx\Documents\xx\xx\xx.docx" -Destination $destination -Force
++$c
Write $filename
}
答案 0 :(得分:1)
要记住一个"页面"是一个相对的术语。 Word只不过是一个文本编辑器,具有很酷的格式,因此该文件基本上是一个巨大的字符串集,其中包含/ t表示选项卡和/ n表示新行。因此,找到特定页面可能会带来一些问题。作为一个观点,如果您打开相同的文本文档,例如记事本,那么您在同一页面上可能没有完全相同的单词数,甚至可能没有相同的内容。
根据文件的内容,您可以找到起点和终点,并提取所需的内容部分。您将逐行读取该文件,查找特定标识符,并将该内容拉出。
希望这会有所帮助。