• ベストアンサー

Excel VBAで読み取り専用を表示しないで開く

VBAで読み取り専用に設定されているExcelブックを 読み取り専用で開いてくださいというダイアログを表示させないで 開くにはどうすればよいでしょうか。 (Windows7 , Excel2010)

質問者が選んだベストアンサー

  • ベストアンサー
  • ushi2015
  • ベストアンサー率51% (241/468)
回答No.1

こんにちは Sub test()   Dim n As String   n = "C:\Users\ユーザー\Desktop\test.xlsx"   Workbooks.Open n, , 1 End Sub こんな感じで。

yam2012
質問者

お礼

読み取り専用で開いてくださいというダイアログの 「はい」ボタンを押した状態で開きたい時は Workbooks.Open n, , 1 「いいえ」ボタンを押した状態で開きたい時は Workbooks.Open n, , , , , , 1 ということですね。 ありがとうございました。

関連するQ&A

  • Excel VBA ブックが閉じれない

    Excel2016を使用してVBAを使用しています。 VBA初心者ですが、よろしくお願いします。 質問内容は以下になります。 EXCEL起動と同時にUserFormを表示させ、UserForm上のコマンドボタンから ダイアログボックスを表示し、他ブックを開く処理なのですが、 他ブックを開くまでは問題ないのですが、他ブックが閉じれない状態になります。 Private Sub Workbook_Open() UserForm1.Show End Sub Private Sub UserForm_Initialize()  各種処理 End Sub Private Sub CommandButton1_Click() Dim OpenFileName As String SetCurrentDirectory (Worksheets(1).Cells(11, 3)) OpenFileName = Application.GetOpenFilename("Microsoft Excelブック,*.xls?") Workbooks.Open OpenFileName End Sub UserFormを閉じると開いたブックも閉じることが可能です。 タスクマネージャーから強制的に終了しようとすると、以下メッセージが出ます。 ”開いているダイアログボックスがあるため、Microsoft Excel を終了できません。[OK]をクリックしてから、Microsoft Excelに切り替えてダイアログを閉じて下さい。" UserFormを閉じないで他ブックを閉じるには、どうすれば宜しいでしょうか。 申し訳ございませんがご教授下さい、よろしくお願いいたします。

  • Excel VBA Dialogsheet

    現在Excel2002を使用しています。 かなり以前に作ったと思われるブックににVBAが入っていて、ソース を見たところ、 DialogSheets("通常入力").Show というコードがありました。 「通常入力」というダイアログを編集したいのですが方法が分かりません。 旧いExcelで読み込まなくてはできないのでしょうか。 もしExcel2002で編集する方法があるのであればお教え頂ければ助かります。

  • 読み取り専用の確認ダイアログを表示しない方法

    Excelのブックを開き、 別のExcelを起動し、同一ブックを開くと、 「読み取り専用で開きますか?」 の確認ダイアログが表示されます。 最初は普通に開き、 2回目以降は確認ダイアログを表示させずに、 読み取り専用で開くようにするにはどうしたらよいのでしょうか。

  • [読み取り専用]の設定

    EXCEL2000を利用しています。 フォルダにあるブックに[読み取り専用]の設定をかけたいと考えています。 いちいち次のような操作で[読み取り専用]の設定をするのが大変なので、VBAで実現したいと考えています。 --------次のような操作----------------------------------------------------------------------------------- 1.[エクスプローラ] ウィンドウで、必要なファイルが保存されているドライブまたはフォルダを開きます。 2.[ファイル] メニューの [プロパティ] をクリックします。 3.[ファイルの情報] タブで、[読み取り専用] チェック ボックスをオンにします。 ----------------------------------------------------------------------------------------------------------------- 上記の操作による[読み取り専用]の設定をVBAで書くためには、どのように記述すればよいでしょうか? 「ActiveWorkbook.ChangeFileAccess Mode:=xlReadOnly 'ブックを読み取り専用に設定する」を記述すると、保存できませんし、「ReadOnlyRecommended:=True」だとセキュリティーが甘くなります。 アドバイスをどうぞよろしくお願いいたします。

  • VBAしか使用しないExcelのファイルサイズを軽くしたい

    VBAしか使用しないExcelのファイルサイズを軽量化するにはどうすればよいのでしょうか? 作成したVBAはExcelファイルを開くとInputBoxのダイアログが表示され、 そこにアドレスを入力するとブラウザが開いてそのページを表示します。 ちなみに、ブックのシートは1つだけにしてあり、セルには何も入力していません。 無駄なモジュールはなく、Excelファイルは直接ダブルクリックして開きたいので圧縮は不可です。 これ以上ファイルサイズを減らすことはできるのでしょうか? ご存知の方がおられましたらご回答をよろしくお願いします。 使用OS:Windows XP 使用ソフト:Microsoft Excel 2003

  • EXCEL VBAについて

    お世話になります。 EXCEL VBAで指定したフォルダのEXCELブックが1つでもオープンされているかどうか知りたいのですが、可能でしょうか。 よろしくお願いいたします。

  • Excel VBA 自身を非表示にした時の解除方法

    Excel2010でVBAのコードデバッグ中に Excelアプリケーションのウインドウの中に Excelブック(シート)が表示されなくなってしまったため 一度、Excelアプリケーションを終了して 再びデバッグ中のExcelブックを開いたのですが それでも Excelアプリケーションのウインドウだけが表示されて、 開きたいExcelブック(シート)は表示されません。 おそらく、VBAのコードの中の Set wb = Workbooks.Open(fileName:=filePass, ReadOnly:=True) ActiveWindow.Visible = False の ActiveWindow.Visible = False のコードが 自分自身を非表示にしてしまったのではないかと思われます。 イミディエイトウィンドウに ActiveWindow.Visible = True と入力してもウインドウが表示されていないので エラーになります。 どのようにすれば非表示の状態から 表示の状態に戻すことができるのでしょうか。

  • EXCEL VBA プログラミング

    EXCEL VBAについて教えて下さい。 プログラミング超初心者です。 book1でマクロを実行し、ダイアログボックスを表示させて、任意のファイル(book2)を開き、book1のsheet1をまるごとbook 2の末尾にコピーするという処理をしたいのですが、うまくマクロが組めません。 ダイアログボックス表示→ファイルの選択まではいけたのですが、その先で苦戦しています。。 ご存知の方、マクロの組み方をご教示いただけますでしょうか。 よろしくお願い致します。

  • エクセルでドラッグアンドドロップで読み取り専用として開く

    Excel2000です。 エクスプローラ上にエクセルのファイル(.xls)が表示されているとします。 そのファイルをExcel上にドラッグアンドドロップしますと、ファイルが開かれます。 そのときに、エクスプローラ上のそのファイルのプロパティで「読み取り専用」になっているか否かにかかわらず、読み取り専用として開くにはどうすればよいですか? なお、エクセルのメニューの ファイル―開く で出てくるダイアログボックス(「ファイルを開く」)から、読み取り専用として開く方法はわかっています。 その「読み取り専用として開く」と同じことを、ドラッグアンドドロップだけでしたいのです。 OSはWindows98SEです。

  • Excel VBA ワークブック閉じる

    ExcelのVBAのコード記述についてなのですが、 ブックを閉じるの動作で、読み取り専用として開いているブックのみを閉じる方法ってあるのでしょうか? 補足ですが、2つブックを開いていて、ブック名も同じ名前で、読み取り専用を名前を付けないように閉じてもう一方のブックが見られる状態にしたいです。

専門家に質問してみよう