- ベストアンサー
VBAコードでイミディエイトウィンドウを表示する方
VBAコードでイミディエイトウィンドウを表示する方法はありますか? 例えば、 Sub test() Debug.Print Now End Sub を実行したときに イミディエイトウィンドウが表示されていなければ結果がわかりませんよね。 Ctrl+Gでイミディエイトウィンドウを表示出来る事は知っていますが サブプロシージャーと実行とともに、 イミディエイトウィンドウをVBAで表示する方法を教えてください。 Sub test() Debug.Print Now イミディエイトウィンドウを表示 End Sub のようにしたいです。 ご回答よろしくお願いします。
- fd45aa
- お礼率100% (102/102)
- オフィス系ソフト
- 回答数1
- ありがとう数1
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
準備1 Excel画面のマクロのセキュリティで「Visual Basicプロジェクトへのアクセスを信頼する」必要があります 準備2 VBE画面の参照設定で「Microsoft Visual Basic for Applications Extensibility」を参照しておきます 手順: application.vbe.windows("イミディエイト").visible = true
関連するQ&A
- NowとNow()とどちらを使った方が良いですか?
どちらも結果は同じでした。 Sub test1() Debug.Print Now End Sub Sub test2() Debug.Print Now() End Sub TechNet
- ベストアンサー
- オフィス系ソフト
- vbaコードが遅い
当方access2003、XP、メモリ2G、コア2DUOなのですが Sub 取得() Dim DB As DAO.Database Dim T As TableDef Set DB = CurrentDb Debug.Print "開始:" & Now For Each T In DB.TableDefs 'ここでやたら時間がかかる Debug.Print T.Name & "取得時間:" & Now Next End Sub これを実行すると、 For Each T In DB.TableDefs を通る時に5秒くらい時間がかかりますがそういうものなのでしょうか?
- ベストアンサー
- その他MS Office製品
- イミディエイトウインドウの活用方法
イミディエイトウインドウに 「?len("aaa")」と入力しエンターキーを押すと 実行され「3」と表示されることがわかったのですが こういうことはどういう場合に使うのでしょうか? Sub test() Debug.Print Len("aaa") End Sub と同じ意味ですよね? わざわざ標準モシ゛ュールに Sub test() Debug.Print Len("aaa") End Sub を書くのは面倒なときに イミディエイトウインドウで ?len("aaa") とすれば楽だ! という時に使うのでしょうか?
- ベストアンサー
- オフィス系ソフト
- VBA 複数の文字のコードを一気に返すには
Sub test1() Dim myStr As String myStr = "abc" Debug.Print Asc("a") Debug.Print Asc(myStr) End Sub このコードは、どちらも97が返るのですが、 myStrは3文字です。 3文字全ての文字コードを返すには、 Sub test2() Dim myStr As String myStr = "abc" Debug.Print Asc(Mid(myStr, 1, 1)) & Asc(Mid(myStr, 2, 1)) & Asc(Mid(myStr, 3, 1)) End Sub のようにするしかないのでしょうか?
- ベストアンサー
- オフィス系ソフト
- vba 「02」を返したいのですが
Sub test() Debug.Print Month(Date) End Sub のようなコードの時に 月の表記を02のように2桁で返すにはどうすればいいですか? Debug.Print Format(Month(Date), "mm") これだと、なぜか「01」が返ります。 「02」を返したいのですが、どうすればいいでしょうか?
- ベストアンサー
- オフィス系ソフト
- " "を複数表示させたい VBAで
Sub test() Debug.Print String(5, " ") End Sub これを実行すると、「&&&&&」になってしまうのですが、 を作るにはどうすればいいですか?
- ベストアンサー
- その他MS Office製品
- 変数を続けて宣言した場合はEmpty型になる?
Sub test1() Dim Int1, Int2 As Long Debug.Print "---------- test1の実行結果 ----------" Debug.Print TypeName(Int1) Debug.Print TypeName(Int2) End Sub Sub test2() Dim Int1 As Long Dim Int2 As Long Debug.Print "---------- test2の実行結果 ----------" Debug.Print TypeName(Int1) Debug.Print TypeName(Int2) End Sub を実行すると、 ---------- test1の実行結果 ---------- Empty Long ---------- test2の実行結果 ---------- Long Long の結果が得られます。 test1のInt1がEmpty型になりますが、変数の型にEmptyはないですよね? どういうことなのでしょう???
- ベストアンサー
- オフィス系ソフト
- (Access) VBA イミディエイトの使い方を教えてください。
(1)標準モジュールにある時は、イミディエイトウィンドウにうまく表示されます。しかし、フォームオブジェクトの中に作成したときは、実行しても何も表示されません。なぜなのですか? (実行したコード) Sub test() Dim i, s s = 0 For i = 1 To 10 s = s + i Debug.Print s Next i End Sub 本などを読みましたが、いまいちイミディエイトが、どういう場面で使えるのかよく分りません。 (2)もし、初心者でも参考になるようなサイトなどが有れば、そちらもぜひ教えてください。 宜しくお願いします。
- ベストアンサー
- Visual Basic
- イミディエイトウインドウの最高表示数は199行?
当方XP&Office2003です。 Sub test() Dim i As Long For i = 1 To 200 Debug.Print i Next i End Sub を実行すると、 2 3 ・ ・ ・ 200 と、表示され、最初の1が消えてしまいます。 イミディエイトウインドウでは、199行までしか表示できないのでしょうか? 私がoffice2003だからですか?
- ベストアンサー
- オフィス系ソフト
お礼
準備1の 「Visual Basicプロジェクトへのアクセスを信頼する」にチェックを入れましたが これは該当のファイルだけではなく、全てのファイル(他のファイル)に適用されてしまうのですね。 準備2の VBE画面の参照設定で「Microsoft Visual Basic for Applications Extensi は、5.3となっていましたが、それにチェックを付けました。 application.vbe.windows("イミディエイト").visible = true を実行してみたら、うまく出来ました。 ありがとうございました。