• ベストアンサー

プログラムの初歩的な質問 ( )について

nanase_p_qの回答

  • ベストアンサー
回答No.1

そのメッセージボックスに表示させたボタンのアクションを値として取り出すかどうかによって変わります。 もし次のようなコードを記述したとします。 msgbox ("メッセージ" ,vbYesNo , "タイトル") vbYesNoと入れたため、これを実行すると ダイアログ内に[はい]ボタンと[いいえ]ボタンが表示されます。 ただ表示させるだけならば()をつけてもつけなくても変わりがありません。 ですが、[はい]ボタンを押した時と[いいえ]ボタンを押した時の動きを変えたい場合は、()つきで記述しないといけないのです。 これはサンプルコードです。 Sub Sumple1()  If msgbox ("メッセージ" ,vbYesNo , "タイトル") = vbYes Then    msgbox "はいが押されました", vbYesNo, "結果"  Else    msgbox "いいえが押されました", vbYesNo, "結果"  End If End Sub ここでは一つ目のダイアログではいを押した場合、vbYesという値が出てくるため、IFで条件式に使っています。

関連するQ&A

  • 初歩の初歩の質問ですが

    初歩の初歩の質問で申し訳ないのですが、Win95にjdk1.3をインストールしapp.javaを作りMS-DOSプロンプトでjavacでコンパイルしようとすると、「app.javaを読み込みません」とエラーが表示されます。app.javaはどこに保存すればよいのでしょうか?よろしくお願いいたします。

    • ベストアンサー
    • Java
  • word 2010でコンパイルエラー

     word 2010でコンパイルエラーが発生します。ヘルプには次のメッセージが出ます。対処方法教えてください。 非表示モジュール <モジュール名> 内でコンパイルエラーが発生しました。 アプリケーション情報 保護されているモジュールにコンパイル エラーがあります。このエラーは、保護されているモジュール内にあるため、表示できません。 このエラーは一般に、実行中のアプリケーションのバージョンまたはアーキテクチャにコードが対応していない場合に発生します (32 ビット版の Microsoft Office アプリケーションを対象としているドキュメント内のコードを 64 ビット版の Office で実行しようとした場合など)。 このエラーの原因と解決方法は次のとおりです。 エラーの原因: このエラーは、VBA コード中の保護されている (非表示) モジュール内にコンパイル エラーがある場合に発生します。該当モジュールが保護されているため、問題となっているコンパイル エラー自体は明示されません。 解決策: ドキュメントまたはプロジェクト内の VBA コードにアクセスできる場合は、該当するモジュールの保護を解除してコードを再実行し、問題となっているエラーを確認します。 ドキュメント内の VBA コードにアクセスできない場合は、ドキュメントの作成者に問い合わせ、非表示モジュール内のコードを更新するように依頼してください。

  • VBAで“ダブルクォート”の表示

    メッセージボックスに、 “ダブルクォート” と表示させる方法がわかりません。 MsgBox("“ダブルクォート”") ←エラー MsgBox("““ダブルクォート””") ←半角の「"」に置き換わる などで上手くいかず、手詰まりになっています。 ・VBA中で記述できないので、ファイルから取得する。 ・CHR()の文字コードで指定 など、試してみる項目はありますが、もっと簡単には出来ないものでしょうか? Word2003, VBA6.0? の環境です。

  • 初歩の初歩

    VBAをかじっている者です。 VBについても勉強していきたいと思っているのですが、初歩中の初歩についてよくわかっていません。ご教授下さい。 VBAはエクセル等から実行可能だと思います。 VBってどこで実行させるのでしょうか? FORTRANなどのようにコンパイルして実行するとかそういう流れなのでしょうか? それともVBを動かすためのソフトが必要になってくるのでしょうか? 初歩中の初歩で大変申し訳ないのですが、困っております。宜しくお願いいたします。

  • vbsからのWordマクロ実行

    やりたいこと  vbsからWordマクロを実行し復帰値をMsgBoxで表示する。 問題点  Test関数を実行し復帰値を取得したいのですがコンパイルエラーとなってしまいます。   正しい書き方を教えてください。 Set oApp = CreateObject("Word.Application") oApp.Documents.Open WScript.Arguments(0) Dim code code = oApp.Run Test ★ MsgBox code

  • MsgBoxがコンパイルエラーになります

    エクセルにてマクロを作成しているのですが、 今まで問題なく動いていたMsgBoxがコンパイルエラーになります。 MsgBox("テスト", vbOKOnly, "テスト") と打っても、 「コンパイルエラーです。修正候補:=」 表示されるようになりました。 今までは、これと同じように打っていても何も問題がなかったのに、 突然、このようになりました。 ちなみに、今まで正常に動いていたものをまったく同じように打っても エラーになります。 まったく原因がわかりません。 どなたかおわかりになる方、よろしくお願いします。

  • VBA コンパイル

    エクセルVBA初心者です。 コードを記述している際に、”迷惑な”コンパイルエラーが出てきます。 例えば dim i i= 記述中に、他をマウスクリックすると、コンパイルエラーになります。 エラーなのは重々理解していますが、実行時にエラーかどうか判定して欲しいです。 オプションで、順次コンパイルOFFなどして試行錯誤しましたが、不可能でした。 仕様なのでしょうか? エクセル2007

  • (Access)VBA デバックの仕方について

    スレッド違いかもしれませんが、プログラムの事なのでこちらに質問させて頂きます。 (アクセス)フォームに作成した【ボタン】にクリック時イベントをVBAコードで記入しました。 Private Sub コマンド0_Click() MsgBox "a" End Sub ・コンパイルして上書き保存。 ・実行時エラーがないか、F5ボタン(sub ユーザーフォームの実行) すると、マクロをクリック時イベントに貼り付けた訳でもないのに、【マクロボックス】が表示されて、デバックできません。 【質問】 (1)そもそも上記のようなコードの場合、デバックするにはわざわざフォームに戻って、コマンド0をクリックしてチェックしないといけないのでしょうか? (2)また、F5ですぐにプログラムが実行される時と、マクロボックスが表示される場合と有りますが、どのいう時にそれぞれのパターンに分かれていくのでしょうか? VBAまだまだ初心者なので、かなり混乱しています。 どなたか、ぜひ、ご指南よろしくお願いします。

  • 同じマクロ名でも、違うモジュールならエラーにならな

    同じマクロ名でも、違うモジュールならエラーにならない? エクセルVBAについてご教授ください。 標準モジュールに ――――――――― Option Explicit Sub CommandButton1_Click() MsgBox "" End Sub Sub CommandButton1_Click() MsgBox "" End Sub ――――――――― と同じマクロ名を2つ作ったら、コンパイルエラーになりますが、 上記のコードは一度消して、フォームモジュールに ――――――――― Private Sub CommandButton1_Click() MsgBox "" End Sub ――――――――― を一つ作り、 標準モジュールに ――――――――― Sub CommandButton1_Click() MsgBox "" End Sub ――――――――― を一つ作った場合は、エラーにならずにマクロを実行できました。 これは、フォームモジュールがPrivate Subだからでしょうか? フォームモジュールに1つ、 標準モジュールに1つ なら同じマクロ名を使っても、エラーにならないという事でしょうか? よろしくお願いします。

  • Access2000VBAで前に記述したコードが終わる前に次に進みます・・・

    フォームを開いた後、Msgboxを表示させたくて、Access2000VBAのOpenイベント又はLoadイベントに、Msgboxを記述しました。 ところが、フォームが開く前にMsgboxが表示されてしまします。フォームが開いた後Msgboxを表示させるためにはどうしたらよいのですか? また、ADOで接続したテーブルの数値型フィールドの合計値を計算して、計算結果をテキストボックスに代入するコードを記述した後、このテキストボックスの値をMsgboxに表示させるコードを記述たところ、計算を終える前にMsgboxが表示されてしまいます。 前のコードが確実に実行された後、次のコードの処理に進む様にするにはどうすればよいのですか?