タイトルの件、下記のとおり質問いたします。
【前提】
●エクセルに、Sheet1、Sheet2がある
●ワードの文書1がある
●上記2つのファイルは同じフォルダにある。
●エクセルのSheet1の情報は、ワード文書へリンクされている。
例:エクセルのSheet1のA1セルに、「あいうえお」と入力すると、ワード文書1の任意の部分に
「あいうえお」と反映される「ワードを開かなくても」
【質問】
エクセルにて、下記の印刷できるマクロがほしいです。
●エクセル、Sheet1、Sheet2、ワード文書1を印刷できるマクロを、エクセル側にほしい。
●エクセルは開くが、ワードは閉じたまま、印刷したい。
●印刷するときに、ワードにて、「文書は変更されています。保存しますか?」というメッセージが
出ないようにして、印刷をしたい。
ご存知の方、いらっしゃいましたら、宜しくお願いします。
No.2ベストアンサー
- 回答日時:
aoyama-reikoさん、おはようございます。
印刷枚数は
Copies:=2
のように指定します。3枚なら Copies:=3 になります。
また、ワードの印刷で、ほんとに文書1~文書2 と連番になっているのならもっと簡単に書けるのですが、多分これは例で書いた文書名で実際は違うのでしょうから、Sub 変更後2 のようにそれぞれ明示しました。
Sub 変更後1()
Dim wd As Object
On Error GoTo line
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set wd = CreateObject("Word.Application")
With wd
.documents.Open Filename:=ThisWorkbook.Path & "\文書1.doc"
.ActiveDocument.PrintOut Copies:=1, Background:=False
.ActiveDocument.Close False
.Quit
End With
Set wd = Nothing
Sheets(Array("Sheet1", "Sheet2")).PrintOut Copies:=2
line:
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
Sub 変更後2()
Dim wd As Object
On Error GoTo line
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set wd = CreateObject("Word.Application")
With wd
.documents.Open Filename:=ThisWorkbook.Path & "\文書1.doc"
.ActiveDocument.PrintOut Copies:=1, Background:=False
.ActiveDocument.Close False
.documents.Open Filename:=ThisWorkbook.Path & "\文書2.doc"
.ActiveDocument.PrintOut Copies:=1, Background:=False
.ActiveDocument.Close False
.Quit
End With
Set wd = Nothing
Sheets(Array("Sheet1", "Sheet2", "Sheet3")).PrintOut Copies:=2
line:
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
No.1
- 回答日時:
前回
http://okwave.jp/qa6740812.html でaoyama-reikoさんの、今回と同じような質問に回答したmerlionXXです。前回との違いは、ワード終了時の保存の有無のメッセージをだしたくないということですね?
なかなか回答がつきませんね。
わたしも回答を迷いました。
なぜならワードを開かずに印刷するという無理難題を解決できなかったから。
妥協案ですがこんな感じではどう。
ワードが開いたことをユーザーに気づかせず印刷し、黙って閉じる方法です。
Sub Word_Print02()
Dim wd As Object
On Error GoTo line
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Set wd = CreateObject("Word.Application")
With wd
.documents.Open Filename:=ThisWorkbook.Path & "\文書1.doc"
.ActiveDocument.PrintOut Background:=False
.ActiveDocument.Close False
.Quit
End With
Set wd = Nothing
Sheets(Array("Sheet1", "Sheet2")).PrintOut
line:
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
いかがでしょう?
この回答への補足
ご回答ありがとうございます。
大変、恐縮ですが、下記の場合には、どのように変更すればよろしいでしょうか??
【変更前】
Sheet1【1枚】Sheet2【1枚】文書1【1枚】
【変更後1】
Sheet1【2枚】Sheet2【2枚】文書1【1枚】
【変更後2】
Sheet1【2枚】Sheet2【2枚】Sheet3【2枚】文書1【1枚】文書2【1枚】
宜しくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- プリンタ・スキャナー CanonのプリンターでPDFファイルやOnenote文書を印刷したい 2 2022/05/31 16:09
- 年賀状作成・はがき作成 はがき作家 2 2023/05/12 06:00
- 年賀状作成・はがき作成 ワード・エクセル2007で印刷 2 2023/05/12 05:40
- Excel(エクセル) 【マクロ】webアドレスにて指定されたCSVファイル【excelソフト表示】を印刷する件 1 2023/02/15 01:52
- 父親・母親 親がすぐキレる件について 1 2023/04/16 23:21
- Word(ワード) 差し込み印刷 4 2022/07/19 20:51
- Excel(エクセル) 差し込み印刷がうまくいかない 2 2022/07/29 12:26
- プリンタ・スキャナー ワードやエクセルで印刷をデフォルトで片面印刷にする方法 4 2023/08/10 16:55
- Word(ワード) 差し込み印刷の処理 1 2022/07/20 16:54
- その他(Microsoft Office) エクセルのマクロについて教えてください。 5 2023/01/21 09:39
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
相手側の携帯が電源切れてる時...
-
LINE追加で「該当するユーザー...
-
1コールだけ鳴るけど切れる電話...
-
よく05(04)lineって見かけるん...
-
いきなりラインのトークに「新...
-
face book で女性の方からline ...
-
Windowsのバッチファイルで正規...
-
ラインナップとラインアップは...
-
「一番上、真ん中、下」を示す英語
-
タイトルの改行
-
ある男子から、ライン追加され...
-
新規発行された格安SIMでLine登...
-
生産ラインの品質を表す直行率...
-
遠くにいる友達とLINE交換する...
-
教えてください
-
歯科衛生士の方へ、連絡先を渡...
-
lineのワン切り、なぜ?
-
既婚女性にラインを聞くことに...
-
妊娠したらどうする?聞くのは...
-
質問です。 先日クラスの女子に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
1コールだけ鳴るけど切れる電話...
-
相手側の携帯が電源切れてる時...
-
よく05(04)lineって見かけるん...
-
LINE追加で「該当するユーザー...
-
ラインナップとラインアップは...
-
Windowsのバッチファイルで正規...
-
いきなりラインのトークに「新...
-
face book で女性の方からline ...
-
生産ラインの品質を表す直行率...
-
遠くにいる友達とLINE交換する...
-
「一番上、真ん中、下」を示す英語
-
python flask から fastapiへの...
-
法線(normal line)はなぜそう...
-
ある男子から、ライン追加され...
-
LINEで好きな人が「笑」を全然つ...
-
タイトルの改行
-
スマホに外国の電話番号を登録...
-
ネットで個人の電話番号を調べ...
-
lineのワン切り、なぜ?
-
会社の先輩とLINE プライベート...
おすすめ情報