プロが教える店舗&オフィスのセキュリティ対策術

VBA初心者ですが、ブックを開いた際に、別のフォルダにあるエクセルファイル全てをバックグラウンドで開きたいと思い、下記のようなコードを書いたのですが、どこにApplication.ScreenUpdating = Falseを入力しても、別のフォルダにあるエクセルファイルが普通に開いてしまいます。

Sub Auto_open()

Const DIR_PATH = "\\あいうえお\"
Dim fl_name As String

fl_name = Dir(DIR_PATH & "\*.xls*")
If fl_name = "" Then
MsgBox "Excelファイルがありません。"
Exit Sub
End If

Do
Workbooks.Open _
Filename:=DIR_PATH & "\" & fl_name
fl_name = Dir
Loop Until fl_name = ""

End Sub

コードを理解していないと言われればそれまでですが、どうしたら上記のようなことができるようになるか、どなたかご教授いただけますか。

A 回答 (2件)

こんにちは



Visible属性をFalseに設定することで、非表示にできます。
でも、一瞬は見えるみたいなので、ちらつきのもとになるようです。

http://www.itlab51.com/?p=5346
    • good
    • 2
この回答へのお礼

できました。助かりました。
ありがとうございました。

お礼日時:2016/09/06 12:43

Application.ScreenUpdating = False とファイルを開くと言う事と何の関係があります??



「開くけ」とプログラムしてるから開くんです。

例えば、セルに値を代入するプログラムが有った場合、実行すると、セルに値が入って行くのが見えます。
セルを画面で描画するから・・・。

それを止めるのがApplication.ScreenUpdating = False。
セルが更新され値が描画されるのをストップする命令コードがApplication.ScreenUpdating = False。
    • good
    • 0
この回答へのお礼

ありがとうございます。勉強します。

お礼日時:2016/09/06 12:42

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A