• ベストアンサー

イミディエイドウインドウを使う時は、先頭に?を

イミディエイドウインドウを使う時は、先頭に?を入れなくてはいけないと思ってたのですが、 アクセス(2007)で、ツールバーの表示・非表示を切り替える時に、 ?DoCmd.ShowToolbar "Ribbon", acToolbarYes とすると、コンパイルエラーになってしまいます。 しかし、 DoCmd.ShowToolbar "Ribbon", acToolbarYes にすると、問題なく実行され、ツールバーが表示されます。 「イミディエイドウインドウを使う時は、先頭にハテナを付けなくてはいけない」 と言うのは私の勘違いだったのでしょうか? ご教授よろしくお願いします。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.2

イミディエイトウィンドウに msgbox "hello" と記入、Enterするとmsgbox命令(まぁ関数ですけど)が「命令として実行」されます。 コードを中断して、コードの中で生きている変数xに x = 123 のようにして、その場で新しい値を代入する命令を実行するなんて事もできますね。 ?は、 ? "hello" のように、イミディエイトウィンドウの中で値を「プリントする命令」です。 何が出来て何ができないかは、VBEのヘルプでイミディエイトウィンドウについて確認してみると、詳しく出ています。

KSWTWKNTIV
質問者

お礼

ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.1

はい、勘違いです。 ? now は print now の省略形です。 Print メソッドは変数やプロパティ・・などの表示に使います。 コードのコメントに ' 注 が rem 注 なのと一緒です。

KSWTWKNTIV
質問者

お礼

ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • Access2007のVBAでリボンを常に表示する

    普段はリボンを使用しないDBで、レポートが開いたときにだけリボンを表示させています。 その際、リボンが常に開いた状態にしたいのですが、 DoCmd.ShowToolbar "Ribbon", acToolbarYes SendKeys "^{F1}", True この記述だと、レポートを開き直すごとにリボンが閉じたり開いたりします。 常にリボンが開いた状態でレポートを開きたいのですが、 どうすればよいでしょうか? ちなみにレポートを閉じるときに下記コードでリボンは非表示に戻しています。 DoCmd.ShowToolbar "Ribbon", acToolbarNo

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

    アクセス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 のように順番を前後させても結果は同じです。 真ん中表示だけでなく、アプリケーションを最大化しつつ リボン・ステータスバーを非表示に事は不可能でしょうか?

  • 自動中央寄せを「はい」にしているのに

    アクセス2010です。 自動中央寄せを「はい」にしたうえで Private Sub Form_Load() DoCmd.RunCommand acCmdAppMaximize 'アプリケーションのサイズを最大化する ’ナビゲーションウィンドウを表示しない DoCmd.SelectObject acForm, "", True DoCmd.RunCommand acCmdWindowHide DoCmd.ShowToolbar "Ribbon", acToolbarNo 'リボンを非表示にする としているのですが 中央に表示されません。 該当のフォームは 起動時に開くように設定していて、 フォルダからファイルを開いたときに最初に表示される位置と 手動でナビゲーションウインドウからダブルクリックして開く位置が違います。 コードは同じなのに。

  • 「実行時エラー 3035メモリ不足です」

    アクセスのテーブルを開いてレコードを並び替えようとすると 「メモリ不足です」と表示されます。 VBAで、 DoCmd.RunSQL SQL のコードでも同じように 「実行時エラー 3035メモリ不足です」と言うエラーが発生します。 VBAでエラーになった場合は、 一度エラーでとまりますが、そのままF5を押すと問題なく実行できます。 メモリは4G積んでいます。win7です。 そんなにメモリが低いでしょうか? アクセスのレコード数は40000くらいです。

  • 実行時エラー 2001 直前の操作は取り消されまし

    アクセスVBAで DoCmd.OpenQuery "Qクエリ", acNormal を実行しようとしたら、 実行時エラー 2001 直前の操作は取り消されました。 と言うエラーになりました。 何が原因なのでしょうか?

  • フォームを閉じる時はとうすればいいのでしょうか?

    VBAでユーザーフォームを表示するときは、 UserForm1.Show でできますが、 閉じる時はとうすればいいのでしょうか? UserForm1.Closeを実行すると コンパイルエラーになってしまいます。 ちなみにエクセル2007です。 ご教授よろしくお願いします。

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

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

  • ACCESS2000→ACCESS97に変換した際のエラー

    ACCESS2000で作成したアプリケーションをどうしても97にバージョンを下げないと いけなくなり、97に落としたのですが、下記のようなエラーが出て困っています。わかる方教えて下さい。お願いいたします。 docmd.close docmd.OpenForm○○ →  ココでエラー 内容 「OpenFormのアクションはキャンセルされました  オブジェクトのメゾットを実行しようとしましたが表示されたダイヤログボックスでキャンセルがクリックされました。(実行時エラー:2501)」  

  • 置換機能を使わずに先頭に「'」をつける方法

    エクセルの列に、置換機能を使わずに「’」(シングルクオテーション)をつける方法を教えてください。 文字の先頭に+があるため、数式と勘違いし、エラーが表示されてしまいます。 置換機能を使って先頭に「’」をつけると、表示上も「’」が残ってしまいます。 列は数千まで下に存在しています。 手打ち入力で「’」を入力すると時間がかかりすぎてしまいます。 置換機能を使わずに先頭に「’」を入力する方法を教えてください。 (手打ち入力と同じ効果)

  • 実行時エラーについて

    お世話になっています。教えて下さい。 VBで作ったプログラムです。 デバッグ時には何の問題もなく、実行可能(完全コンパイル後に実行)で、コンパイルも問題なく通りますが、EXEにして実行すると、以下のエラーが出ます。 実行時エラー:'91' object変数、またはwithブロック変数が設定されていません。 どなたか、原因に心当たりがある方、いらっしゃったら教えて下さい。 よろしくお願いします。

専門家に質問してみよう