teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

追記

2020/11/09 13:04

投稿

saksak_planner
saksak_planner

スコア6

title CHANGED
File without changes
body CHANGED
@@ -3,24 +3,8 @@
3
3
  全シートを一括印刷できるサンプルコードがあったので、印刷ページの指定を引数に渡して
4
4
  PrintOutを実行すればよいと思い以下のように書き換えましたが引数の部分でエラーが出てしまいました。
5
5
 
6
- EXCELの場合は多少コードが異なりますが、問題なく印刷することができたのですが
7
- Wordの場合は指定方法が異なるのでしょうか。
8
-
9
- 有識者の方、どうかよろしくお願い致します。
10
-
11
6
  ```PowerShell
12
- 引数 '1' は System.Management.Automation.PSReference でなければなりません。[ref] を使用してください。
13
- 発生場所 行:19 文字:5
14
- + $doc.PrintOut.Invoke(@($From, $To, $Copies))
15
- + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
16
- + CategoryInfo : NotSpecified: (:) [], MethodException
17
- + FullyQualifiedErrorId : NonRefArgumentToRefParameterMsg
18
-
19
- ```
20
-
21
- ```PowerShell
22
-
23
- $wordFiles = Get-ChildItem -Path "C:\" -Include *.doc,*.docx -Recurse
7
+ $wordFiles = Get-ChildItem -Path "C:\allprintout" -Include *.doc,*.docx -Recurse
24
8
 
25
9
  foreach($wordFile in $wordFiles)
26
10
  {
@@ -31,14 +15,8 @@
31
15
  # wordドキュメントを開く
32
16
  $doc = $word.Documents.Open($wordFile.FullName)
33
17
 
34
- #開始ページと終了ページ、部数を指定して印刷
35
- #開始・終了ページを指定しないと全シートが印刷されてしまう
36
- $From = 1 #開始ページ
37
- $To = 1 #終了ページ
38
- $Copies = 1 #部数
39
-
40
18
  # wordドキュメント印刷
41
- $doc.PrintOut.Invoke($From,$To,$Copies))
19
+ $doc.ActiveWindow.PrintOut Range:=wdPrintFromTo, From:="1", To:="1"
42
20
 
43
21
  # wordドキュメントを閉じる
44
22
  $doc.Close($True)
@@ -53,4 +31,22 @@
53
31
  [System.Runtime.Interopservices.Marshal]::ReleaseComObject($word)
54
32
  # 変数除去
55
33
  Remove-Variable word
34
+
35
+ ```
36
+
37
+ 以下、エラー内容
38
+
39
+ ```PowerShell
40
+
41
+ 発生場所 行:13 文字:19
42
+ + $doc.PrintOut Range:=wdPrintFromTo, From:="1", To:="1"
43
+ + ~~~~~~~~~~~~~~~~~~~~
44
+ 式またはステートメントのトークン 'Range:=wdPrintFromTo' を使用できません。
45
+ 発生場所 行:13 文字:39
46
+ + $doc.PrintOut Range:=wdPrintFromTo, From:="1", To:="1"
47
+ + ~
48
+ パラメーター一覧に引数が存在しません。
49
+ + CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
50
+ + FullyQualifiedErrorId : UnexpectedToken
51
+
56
52
  ```