• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:データベースウィンドウを表示しない)

データベースウィンドウを表示しないと実行時エラーが発生する問題

bonaronの回答

  • ベストアンサー
  • bonaron
  • ベストアンサー率64% (482/745)
回答No.1

Sub データベースウィンドウをしない()   DoCmd.SelectObject acForm, "", True   DoCmd.RunCommand acCmdWindowHide End Sub SelectObject でデータベースウィンドウをアクティブにしておいて acCmdWindowHide コマンドで、そのウィンドウを非表示にします。 なお、   DoCmd.SelectObject acForm, "", True の 「True」 は、表示/非表示 を制御するものではなく、 データベースウィンドウで選択するか、否かを決めるものです。 詳しくは 「SelectObject」をヘルプで調べてください。

nifufu2
質問者

お礼

一回表示してから非表示にするんですね。 ありがとうございました。

関連するQ&A

  • フォームを開いても真ん中に表示されない

    アクセス2007です。 フォームのプロパティで「自動中央寄せ」を「はい」にして Private Sub Form_Load() DoCmd.RunCommand 10 DoCmd.ShowToolbar "Ribbon", acToolbarNo 'リボンを非表示にする Application.CommandBars("Status Bar").Visible = False 'ステータスバーを非表示にする 'ナビゲーションウィンドウを表示しない DoCmd.SelectObject acForm, "", True DoCmd.RunCommand acCmdWindowHide End Sub をすると、真ん中に表示されません。 ナビゲーションウィンドウ分だけ左に寄ってしまいます。 Private Sub Form_Load() 'ナビゲーションウィンドウを表示しない DoCmd.SelectObject acForm, "", True DoCmd.RunCommand acCmdWindowHide DoCmd.RunCommand 10 DoCmd.ShowToolbar "Ribbon", acToolbarNo 'リボンを非表示にする Application.CommandBars("Status Bar").Visible = False 'ステータスバーを非表示にする End Sub のように順番を前後させても結果は同じです。 真ん中表示だけでなく、アプリケーションを最大化しつつ リボン・ステータスバーを非表示に事は不可能でしょうか?

  • ナビゲーションウインドウを非表示and中央寄せ

    アクセスのフォームの自動中央寄せを「はい」にしてるのですが Private Sub Form_Load() DoCmd.SelectObject acForm, "", True DoCmd.RunCommand acCmdWindowHide End Sub をやり、ナビゲーションウインドウを非表示にしようとすると、 中央によらないのですが、 ナビゲーションウインドウを非表示にしつつ、中央にフォームを寄せることは不可能でしょうか?

  • サブフォームの新規レコードに移動したい アクセス

    親フォームのコマンドボタンをクリックしたら 親フォームにはまっているサブフォームの新規レコードに移動したいのですが、 うまくできません。 サブフォームのオブジェクト名は、"F_SubForm"です。 サブフォームはデータシートビューです。 VBAコードは Private Sub cmd_test_Click() DoCmd.SelectObject acForm, "F_SubForm" DoCmd.GoToRecord , , acNewRec End Sub です。 上記コードを実行すると DoCmd.SelectObject acForm, "F_SubForm" の部分で、 「実行時エラー 2489  オブジェクトが開いていません。」 となります。 だからと言って、 DoCmd.GoToRecord , , acNewRec だと、何も起こりません。(新規レコードに移動しません) 解決方法をご教授ください。

  • ACCESSでフォームのUnloadでデータベースを閉じる様にしたら・・・

    ACCESS97でフォームのUnloadを使ってフォームを閉じた後、データベースも閉じるプログラムを作って実行させました。思った通りに動いたのですが、フォームをデザインビューにしようとすると、おそらく上記のプログラムが実行される為、データベースが閉じてしまうので編集できなくなってしまいました。 Pribate Sub cmdClose_Click() DoCmd.Close acForm,Me.Name End Sub -------------------------------- Private Sub Form_Unload(Cancel As Integer) Application.CloseCurrentDatabase End Sub 多分この様なプログラムでした。 解決方法を教えてください。 宜しくお願いします。

  • アクセス ステータスバーの文字を表示させたい

    エクセルなら、 Sub Sample01() Application.StatusBar = True Application.StatusBar = "あああ" End Sub で、左下に文字を表示させられますが、 同じコードをアクセスで実行すると、「StatusBar 」の部分が、コンパイルエラーになります。 なので、 Sub Sample02() DoCmd.StatusBar = True DoCmd.StatusBar = "あああ" End Sub として見ましたが、結果は同じでした。

  • 現在アクティブになっているオブジェクトを取得

    現在アクティブになっているオブジェクトを取得する方法は?アクセスです Sub マクロ() DoCmd.MoveSize 0, 0 End Sub でフォームの位置を指定できますが、 現在アクティブになって言えるオブジェクトに対して行われますよね。 例えばデータベースウインドウを選択した後に実行すれば データベースウインドウに対して行われますよね。 そこで現在アクティブなオブジェクト名を取得したいのですがそのようなコードはありますか? DoCmdをウォッチ式に追加して観察しましたが 現在アクティブなオブジェクト名は表示されませんでした。 DoCmd.SelectObjectacForm,フォーム1 でアクティブにできる事はしっています。ご回答よろしくお願いします。

  • 標準モジュールだとエラーになる理由を教えてください

    アクセスのフォームの上にコマンドボタンを一つ設置して、 クリックイベントで Private Sub コマンド0_Click() DoCmd.Close acForm, Me.Name End Sub とすれば、自身のフォームが閉じます。 しかし、 Private Sub コマンド0_Click() Call test End Sub と、 標準モジュール Option Compare Database Option Explicit Sub test() DoCmd.Close acForm, Form_フォーム1 End Sub にすると、 実行時エラー2498 指定した式は、 いずれか の引数とデータ型が対応していません。 になります。 行ってる意味は同じだと思うのですが、 なぜエラーになるのか教えていただけますか?ご教授よろしくお願いします。

  • アクセス2000→エクセル2010へエクスポート

    Private Sub cmd出力ボタン_Click() DoCmd.SetWarnings False DoCmd.TransferSpreadsheet acExport, 8, "出力クエリ", "C:データ.xlsx", True, "" DoCmd.SetWarnings True End Sub 実行すると 外部テーブルのフォーマットが正しくありません と出てしまいます。 エクセル97の形式にエクスポートする際は大丈夫でした。 spreadsheettypeの引数が違うのかとは思いますが適切な数値がわかりません。 他のやり方等もあれば教えて下さい。

  • オブジェクトの削除や更新クエリ時に確認画面がでない

    Sub メッセージ表示() DoCmd.SetWarnings True End Sub を実行したり、 ツール→オプション→編集/検索→確認 ・レコードの変更 ・オブジェクトの削除 ・アクションクエリ 全てにチェックを入れているのに確認画面がでてきません。 OS:2000、Access2003です。 何かわかる方よろしくお願いします。

  • サブフォームのビューを切り替えたい

    親フォーム(フォーム1)にサブフォームとして、 テーブルをソースとするサブフォーム(テーブル1のサブフォーム)を配置しました。 親フォームからサブフォームのビューを変更したいのですが どうすればいいか教えてください。 親フォームのコマンドボタンにはそれぞれ Private Sub 単票フォームへ切り替え_Click() Me.Controls("テーブル1のサブフォーム").Form.DefaultView = 1 '帳票フォーム End Sub Private Sub 帳票フォームへ切り替え_Click() Me.Controls("テーブル1のサブフォーム").Form.DefaultView = 0 '単票フォーム End Sub としたのですが、 実行すると 実行時エラー 2136 "このプロパティを設定するには、フォームまたはレポートをデザインビューで開きます"。 となってしまいます。 Private Sub 帳票フォームへ切り替え_Click() DoCmd.SelectObject acForm, "テーブル1のサブフォーム" DoCmd.RunCommand acCmdFormView End Sub にしたところ、 実行時エラー 2489 “オブジェクト テーブル1が開いていません、” になります。 サブフォームに埋め込んでいて親フォームを開いていても 開いてない事になるのですね。 フォームビューの時に、切り替える事は不可能なのでしょうか? 帳票ビュー表示用フォーム、 単票ビュー表示用フォーム を作るしかないのでしょうか?