Ich habe es geschafft, & bearbeiten pro Wort Datei zu finden. Mit diesem Code:Wie ersetze ich alle Vorkommen von Zeichenfolge in Word-Dokumenten in einem Ordner
$objWord = New-Object -comobject Word.Application
$objWord.Visible = $false
$objDoc = $objWord.Documents.Open("C:\users\stefan\test\New Microsoft Word Document.docx")
$objSelection = $objWord.Selection
$FindText = "that"
$MatchCase = $False
$MatchWholeWord = $true
$MatchWildcards = $False
$MatchSoundsLike = $False
$MatchAllWordForms = $False
$Forward = $True
$Wrap = $wdFindContinue
$Format = $False
$wdReplaceNone = 0
$ReplaceWith = "this"
$wdFindContinue = 1
$a = $objSelection.Find.Execute($FindText,$MatchCase,$MatchWholeWord, `
$MatchWildcards,$MatchSoundsLike,$MatchAllWordForms,$Forward,`
$Wrap,$Format,$ReplaceWith)
$objDoc.Save()
$objWord.Quit()
Aber ich möchte es für den gesamten Ordner tun. Ich habe versucht, so etwas wie dies einzufügen:
$objWord = New-Object -comobject Word.Application
$objWord.Visible = $false
$list = Get-ChildItem "c:\users\stefan\test\*.*" -Include *.doc*
foreach($item in $list){
$objDoc = $objWord.Documents.Open($list.FullName,$true)
$objSelection = $objWord.Selection
$FindText = "Sara"
$MatchCase = $False
$MatchWholeWord = $true
$MatchWildcards = $False
$MatchSoundsLike = $False
$MatchAllWordForms = $False
$Forward = $True
$Wrap = $wdFindContinue
$Format = $False
$wdReplaceNone = 0
$ReplaceWith = "AJMOO"
$wdFindContinue = 1
$a = $objSelection.Find.Execute($FindText,$MatchCase,$MatchWholeWord, `
$MatchWildcards,$MatchSoundsLike,$MatchAllWordForms,$Forward,`
$Wrap,$Format,$ReplaceWith)
$objDoc.Save()
$objWord.Quit()
}
Auch es ändert sich nur ein Element, das gefunden wird, aber ich möchte alle Elemente in der Datei. Danke.
ich noch nicht zu testen, aber ich sehe ein mögliches großes Problem. '$ wdFindContinue' wird verwendet, bevor es definiert ist. '$ wdFindContinue = 1 'sollte kommen, bevor Sie es $ wrap zuweisen. Ändert das etwas? Dies würde möglicherweise dazu führen, dass die erste Datei nicht funktioniert, aber die nachfolgende könnte in Ordnung sein. In jedem Fall sollte das geändert werden. – Matt
@Matt, ich werde diese Sorge jetzt überprüfen, und ich werde dich jetzt lassen :) Danke. – Stefan0309