- 締切済み
VBAでの不明な点
いつもお世話になっております。当方まだVBAを始めて3日ほどの新参者です。 以下のようにVBAにコードを書いたのですがどうしてもYESNO型になりません。 OKボタンしか表示しないのでぜひご指導頂けたらと思います。 バージョン:アクセス2010 Private Sub コマンド12_Click() Dim Rei As String Rei = MsgBox("【" & Format([Forms]![frm1200:合計金額]![合計金額], "#,###" & "円" & "】" & Chr(13) & Chr(13) & "金額は正しいですか?", vbYesNo)) If Rei = vbYes Then MsgBox ("OK") End If よろしくお願いします。まだ新参者なので他にご質問があればいくらでも補足しますので教えて下さい。 End Sub
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- tsubuyuki
- ベストアンサー率45% (699/1545)
- 山田 太郎(@f_a_007)
- ベストアンサー率20% (955/4574)
- kmetu
- ベストアンサー率41% (562/1346)
- kmetu
- ベストアンサー率41% (562/1346)
関連するQ&A
- Excelで,特定のシートを開いたときにメッセージボックスを表示するに
Excelで,特定のシートを開いたときにメッセージボックスを表示するには? Excelを使用しているときに,例えばSheet3を開いたとき,メッセージボックスが開くようにしたいです。 個人的に考えているのは,そのシートの「コードの表示」で現れるVisual Basicの部分に Private Sub Worksheet_Open() YesNo = MsgBox("メッセージ。よろしいですか?", vbYesNo) If YesNo = vbYes Then End If このようなマクロを入れるといいのかと思いましたが動きません。 どこが間違っているのでしょうか?
- ベストアンサー
- その他MS Office製品
- メッセージボックスの使い方
MsgBoxで困っています。よろしくお願いします。 現在、次のように書いています。 Sub消去する() タイトル = "データを消去" メッセージ = "すべてのデータを消去します。いいですか?" スタイル = vbYesNo + vbQuestion + vbDefaultButton1 + vbApplicationModal yesno = MsgBox(メッセージ, スタイル, タイトル) If yesno = vbYes Then Range("E10:E109").Select Selection.ClearContents End If End Sub ところがこれだと、何もデータがないのに削除しようとします。 そこで、 1. データがない時には「MsgBox ("個数が入っていません"), vbExclamation」を出して終了する。 2. データがある時には初めに書いているメッセージを出す。 こんな具合にしたいのです。 ご指導よろしくお願いします。
- ベストアンサー
- Visual Basic
- Vbscriptエラー
vbでメッセージBOXを用いてプログラムを起動できるようにしたいのですがエラーが出てしまいます。「インデックスが有効範囲にありません。」 どこが間違っているのでしょうか? ーーーーーーー Dim objWShell Dim a Dim b a = MsgBox (" 「」を利用。"&Chr(13)&Chr(13)&_ " 「」? "&Chr(13)&Chr(13)&Chr(13)&_ " ---------------------------- "&Chr(13)&_ " お問い合わせください。" , vbYesNo,"「r」") ' MsgBox vbYes&"="&a If a = vbYes Then Set objWShell = CreateObject("WScript.Shell") b = WScript.Arguments(0) If b = 0 Then objWShell.Run "C:\Windows\System32\notepad.exe" ,vbNormalFocus,False ' End If End If ーーーーー
- 締切済み
- Visual Basic
- エクセル メッセージボックスにタイトルとアイコンを入れる方法を教えてください。
こんにちは。いつも大変お世話になってます。 If (vbYes <> MsgBox("実行しますか?", vbYesNo)) Then Exit Sub End If 以上のようなVBAを書きました。YESなら実行、NOならキャンセルです。 ここまではなんとかできたのですが、このメッセージボックスにタイトルと?マークのアイコンを追加するにはどうしたら良いのでしょうか?
- ベストアンサー
- オフィス系ソフト
- VBAで教えてください。
データがないときはExitSubしたいのですが、何処に記述すれば良いでしょうか? Sub 削除() Dim i As Long If MsgBox("データを削除します。よろしいですか?", vbYesNo) = vbYes Then Sheets("リスト").Select i = 5 Do Until i = 200 If Cells(i, 5).Value = Sheets("マスタ登録").Range("D5") Then Cells(i, 1).EntireRow.Delete End If i = i + 1 Loop Else Exit Sub End If End Sub
- ベストアンサー
- オフィス系ソフト
- エクセル/BeforeCloseイベントで保存できない!?
エクセル2000です。 以下の_BeforeCloseイベントのマクロ(非常に簡略化してますが)ですが、標準モジュールに設定した Sub 終了() ActiveWorkbook.Close End Sub から終了させた場合、ActiveWorkbook.Saveの部分だけが働かないようです。 エクセル画面右上の×で終了させた場合は保存されます。 どうしてでしょうか? Private Sub Workbook_BeforeClose(Cancel As Boolean) With Sheet1 If .Range("A1") <> .Range("B1") Then ret = MsgBox("変更を保存しますか?" _ + Chr(&HD) + Chr(&HA) + "" _ + Chr(&HD) + Chr(&HA) + "新:" & .Range("A1") _ + Chr(&HD) + Chr(&HA) + "旧:" & .Range("B1"), vbYesNo + vbQuestion, " 確認") If ret = vbYes Then ActiveWorkbook.Save '←なぜ保存されないの?! MsgBox "保存しました" ThisWorkbook.Saved = True ActiveWorkbook.Close (False) End If Else ThisWorkbook.Saved = True ActiveWorkbook.Close (False) End If End With End Sub
- ベストアンサー
- オフィス系ソフト
- VBAからIEの操作
グーグルをIEで開いてVBA(語句)を検索して見終わったら IEを閉じる作業をしたいのですが、検索窓にVBA(語句)を 入力するところでエラーとなります。初心者ですが、なんとか 勉強したいのでよろしくお願いいたします。 Sub ie_test_Navigate() Dim objIE As Object Set objIE = CreateObject("InternetExplorer.application") objIE.Visible = True objIE.Navigate "http://www.google.co.jp/" IE.document.all.q.Value = "VBA" IE.document.all.btnG.Click If MsgBox("IEを閉じますか?", vbYesNo, "終了確認") = vbYes Then objIE.Quit End If Set objIE = Nothing End Sub
- 締切済み
- Visual Basic
- 【VBA】コンパイルエラーについて
Excelシートが5枚あり、 MsgBoxを使って、印刷したいシートの場合はOKボタンを押下し印刷します。 1枚目のシートが終わったら、2回目の MsgBoxがでて、印刷するかを判定します。 以下のような、VBAを記述したのですが、なぜかコンパイルエラーになってしまいます。 ※NEXTに対応するFORがありませんとエラー表示されます どこが誤りになるのか教えていただけると助かります。 お手数お掛けいたしますが、よろしくお願い致します。 ================================================================ Sub 必要なシートだけ印刷() Dim i As Long For i = 1 To 5 '←処理を5回繰り返す Worksheets("シフト表(" & i & ")").Select rc = MsgBox("印刷するシフト表を選択します。" & vbCrLf & "シフト表(" & i & ")""を印刷しますか?", vbYesNo + vbQuestion, "確認") 'もしyesを選択したら If rc = vbYes Then ActiveSheets.PrintOut '←印刷する Next i Exit Sub '←プロシージャから抜け出る End If End Sub ================================================================
- ベストアンサー
- Excel(エクセル)
- セルの値を削除するVBA
Excel2003を使い、名簿リストのようなものを作成しました。 ワンクリックで一部情報をすべて削除できるように、ボタンに対してマクロを組んだのですか、 なぜか、 実行時エラー'1004' RangeクラスのSelectメゾットが失敗しましたと表示されます。 ボタン処理のソースはこれです↓ Private Sub CommandButton1_Click() メッセージ = "本当に削除しますか" スタイル = vbYesNo タイトル = "一部削除" YESNO = MsgBox(メッセージ, スタイル, タイトル) If YESNO = vbYes Then Sheets("リスト").Select Range("C2:E101").Select Selection.ClearContents Sheets("設定").Select ActiveWindow.SmallScroll Down:=39 Range("B57:H57").Select 完了 = "削除しました" スタイル = vbOKOnly dds = MsgBox(完了, スタイル, タイトル) Else End If End Sub これを↑どういった風に改変すればエラーがでなくなるのか?ご存じの方教えてください。 よろしくお願いします。
- ベストアンサー
- Windows XP
- VBA 加算演算時のトラブル
事務処理用に準備したVBA処理の数値合計チェックにて本来イコールとなるべきところ、ノットイコールと判定されてしまいます。当該部分を抜き出し、わかりやすくしたものが下記のロジックですが、ここで、test2,test4は結果がイコールとなるものの、test3の場合、ノットイコールとなってしまいます。どなたか、原因につき教えていただけませんか? Dim aaa As Double Dim bbb As Double sub test2() bbb = 16.67 + 16.67 aaa = 33.34 If bbb = aaa Then MsgBox "OK" Else MsgBox "NE" End If End Sub Sub test3() bbb = 16.67 + 16.67 + 16.67 aaa = 50.01 If bbb = aaa Then MsgBox "OK" Else MsgBox "NE" End If End Sub Sub test4() bbb = 16.67 + 16.67 + 16.67 + 16.67 aaa = 66.68 If bbb = aaa Then MsgBox "OK" Else MsgBox "NE" End If End sub
- 締切済み
- オフィス系ソフト