[[20201020152445]] 『ファイルOPEN時外部ソースへのリンクメッセージを』(hn) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『ファイルOPEN時外部ソースへのリンクメッセージを表示させないようにするには。』(hn)

複数ファイルの特定のシートを一括印刷するマクロをあるページを参考に作成しましたが、ファイルを開くたびに「外部ソースへのリンクメッセージ」が表示され、更新する・しないを選択しなければなりません。
表示せず一括で印刷したいのですが、以下コードを入れたら表示しないのではないかと思っておりますが、コードの入れ方が分かりません。
Workbooks.Open Filename:=ThisWorkbook.Path & "sample.xlsx", UpdateLinks:=False

以下コード内へどのようにコードを書いたらメッセージが表示されないようになりますでしょうか。

 Sub 一括印刷()

   'ダイアログで印刷対象ブックを開く(複数ファイル指定可)
    Dim FileName As Variant
    FileName = Application.GetOpenFilename _
                    ("Microsoft Excelブック,*.xls?", MultiSelect:=True)

    If Not IsArray(FileName) Then
        Exit Sub
    End If

    Dim cnt As Long  '選択ファイル数のカウント
    cnt = UBound(FileName)

    Dim rc As Long '実行確認
    rc = MsgBox(cnt & "ファイルが選択されました。" & vbCrLf & _
    "印刷を開始しますか?", vbOKCancel + vbInformation)

    If rc = vbOK Then

        Dim n As Long '印刷対象のブック数

        For n = LBound(FileName) To UBound(FileName)

            Dim wb As Workbook '印刷対象ブック

            Set wb = Workbooks.Open(FileName(n))

                Worksheets("調査シート").PrintOut '調査シートのみ印刷

            wb.Close False '保存しないで閉じる

        Next n

        MsgBox "印刷終了しました。"

    End If

End Sub

< 使用 Excel:Excel2013、使用 OS:Windows10 >


 実際に確認していないので恐縮ですが、
     Set wb = Workbooks.Open(FileName:=FileName(n), UpdateLinks:=False)
 としてみたらどうでしょうか。

 それでも警告が出るなら、    
     Application.DisplayAlerts = False
     上記処理
     Application.DisplayAlerts = True
 とでもすればよいのかな?

 もっとも、それらのブックに対して以下のプロパティ設定をしておけば、
 ActiveWorkbook.UpdateLinks = xlUpdateLinksAlways
 「表示を出さずにそのまま自動で更新する」のでは?
 「表示を出さずに自動で更新しない」という選択肢もあるので
 必要に応じて調べて見て下さい。

(γ) 2020/10/20(火) 18:09


ありがとうございます。
 Set wb = Workbooks.Open(FileName:=FileName(n), UpdateLinks:=False)
で出来ました。

以下の一番左と右のカッコがなかった為出来なかったようでした。
(FileName:=FileName(n), UpdateLinks:=False)

プロパティの設定も試してみます、大変参考になりました
ありがとうございます。

(hn) 2020/10/20(火) 18:42


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.