• ベストアンサー

VBA メッセージボックス内に・・・

セルで計算した結果って、 メッセージボックスで表示できますよね? cells(1,1)+cells(2,1)=x msgbox("答えは「x」") って感じではできませんか?

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

  • ベストアンサー
  • picknic
  • ベストアンサー率25% (33/132)
回答No.1

x=cells(1,1)+cells(2,1) msgbox("答えは「" & x & "」") みたいな感じでできるとおもうよ

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

関連するQ&A

  • VBA のメッセージボックスに・・・

    Private Sub CommandButton1_Click() Dim intMsg As Integer Dim x As Double x = Val(Cells(3, 2).Value) / Val(Cells(2, 2).Value) ^ 2 Cells(2, 5) = x intMsg = MsgBox("指数は&x&" & vbCrLf & "&z&です。") Select Case x Case 0 To 18 MsgBox "やせぎみ" Case 19 To 25 MsgBox "普通" Case 26 To 30 MsgBox "太り気味" Case Else MsgBox "危険" End Select End Sub ってプログラムを組んだのですが メッセージボックスに結果が表示されません。 計算して出た値を、メッセージボックス内のxとzで表示させたいのですが・・・ &ではさむ?だけではだめなんですか?

  • VBAのメッセージボックスで%表示

    お世話になります。 VBAにて、算出されたある数字をメッセージボックスで %表示したいのですが、エクセルシートであれば、表示させる セルを決め、そのセルの表示形式を「パーセンテージ」にすれば いいのですが、メッセージボックスで表示させたいのです。 可能なのかどうか分かりませんが、ご教示頂きたく宜しく お願い申し上げます。

  • VBA  前回のの続きです。

    BMI指数を計算して表示させるプログラムが組みたいです。 Private Sub CommandButton1_Click() y = Val(Cells(1, 2).Value) x = Val(Cells(3, 2).Value) / Val(Cells(2, 2).Value) ^ 2 Cells(2, 5) = x MsgBox ("指数は「x」&vbCrLf&yさんはzです。") Select Case x Case "18<x" z = "やせぎみ" Case "19To25" z = "普通" Case "26To30" z = "太り気味" Case Else z = "危険" EndSelect End Sub と、入力しました。 ですが、メッセージボックスに思うように表示されません。 私は、 「指数は○○ 名前 さんは、 ○○(体型)です」 ってやりたいのですが・・・ メッセージボックス内での改行の仕方が知りたいです。 後、プログラムの間違いもあったら教えて下さい。 よろしくおねがいします。

  • メッセージボックスについて。

    上司に言われた締め切りがあと4日になってしまいました。 在庫管理で在庫残高シートに次のプログラムをはってみました。 Private Sub Worksheet_Change(ByVal Target As range) Dim clm As Integer '変化したセルの列 Dim row As Integer '変化したセルの行 Dim counter As Integer '不足数 clm = Target.Column row = Target.row If Worksheets("在庫残高").Cells(row, clm) < Worksheets("在庫限界入力").Cells(row, clm) And Worksheets("在庫残高").Cells(row, clm) > 0 Then counter = Worksheets("在庫限界入力").Cells(row, clm) - Worksheets("在庫残高").Cells(row, clm) MsgBox counter & "本在庫不足", vbOKOnly, "注意" Else If Worksheets("在庫残高").Cells(row, clm) < 0 Then MsgBox "在庫がありません", vbOKOnly, "警告" End If End If End Sub アクティブになってる入力シートに入力したときに、アクティブシートにメッセージボックスを出したいのですが、どうすればよいでしょう。複数の入力シートに これを全て貼り付けることも考えましたが、入力シートの何個かのセルが、 在庫残高シートの一つのセルに参照されるようになっているので、そうしないほうが、 いいんじゃないかなとおもいました。 よろしくお願いします。

  • Access メッセージボックスで文字列と変数を

    メッセージボックスについての質問です。 MsgBox "データ数を表示します” とすればメッセージボックスで「データ数を表示します」と表示されますね。 変数kazuの値が100とします。 MsgBox kazu とすればメッセージボックスで「100」が表示されます。 それでは 文字列の「データ数を表示します」と 変数の「100」が一緒に表示されるメッセージボックスは出来ないものですか?

  • VBA メッセージボックス表示後の処理について

    ExcelのVBAで質問があります。 たとえばA列に同じ情報が入力されているシート1とシート2がある状態で、 シート2のA列の情報を変更(または追加や削除)をするとします。 シート2にコピペなどでデータを貼り付けた際、既存情報を変更した 場合は、シート1とシート2の値を比較して"既存情報は変更できません"の メッセージボックスを表示させています。 その後の処理で、シート1とシート2の値を比較して、異なっている値については 元に戻したいのですが、新規追加(シート1がブランクのセルに対してシート2に値が入っている) の場合は値を残したままにしたいです。 For i = 1 to EndRow If worksheets("シート1").cells(i,1).value<>worksheets("シート2").cells(i,1).value and worksheets("シート1").cells(i,1).value <> "" and worksheets("シート2").value <> "" then msgbox "既存情報は変更できません" vbOKOnly この後のコードをどう記述したらよいでしょうか。 (またはIf文の条件指定を修正した方がよろしいでしょうか) ご存知の方がいらっしゃいましたらご教示お願いいたします。

  • メッセージボックス表示

    VBAでメッセージボックスの表示方法で教えてください。 あるセル、例えばA1に”111”と入力されたらメッセージボックスで ”○○”と出したい場合はどうしたらいいですか。 あと、A1からA3に”111”と入力された場合の複数セルの場合も教えてください。

  • エクセルでVLOOKUPで検出できなかったらメッセージボックスを出した

    エクセルでVLOOKUPで検出できなかったらメッセージボックスを出したい。 シート1のセルB1に =VLOOKUP(A1,シート2!B2:F1000,2,FALSE) と式を入れてあります。 シート1のセルA1に入力をするとシート2のB列から入力した同レコード を抽出しその行のC列を シート1のセルB1に表示します。 シート2に同レコードが無ければ セルB1には #N/A と表示されます。 この時にこの#N/Aの表示をトリガーに メッセージボックスで 「データーがありません」と表示させるのはどうしたらいいでしょうか? マクロを組みましたが、わざとシート2にはない値を入力した時に メッセージボックスが表示される場合と表示されない場合があって困っています。 ------------------------------------------------ Range("B1").Select If IsError(ActiveCell.Value) Then errval = ActiveCell.Value Select Case errval Case CVErr(xlErrDiv0) MsgBox "#DIV/0! エラー" Case CVErr(xlErrNA) If vbOK = MsgBox(" データーがありません") Then Exit Sub End Select End If ----------------------------------------------- またこのメッセージボックスには「OK」と表示されています。 このOKをクリックすると 登録してある別のマクロを起動させる事はできますか? よろしくお願いします。

  • エクセルVBAにて

    A1セルに「150」、B1セルに「46」、C1セルに「13」と入っている状態で 下記マクロを実行するとD1セルに計算結果が入るのですが その結果が「1.351999998092651」となります。 電卓で計算すると「1.352」になりますし、セルに計算式を入れた場合でも 同様の結果になるのですが、なぜマクロの場合だけ結果が違うのでしょう? 初歩的な質問なのかもしれませんが、分かる方教えてください。 ※変数に代入しているのは、D1セルで累積結果を求めたいためです。 Sub KEISAN() Dim KEISAN As Single KEISAN = (Cells(1, 1) - Cells(1, 2)) * Cells(1, 3) / 1000 Cells(1, 4) = KEISAN End Sub

  • VBAコードでメッセージがうまく返せません

    独学でVBAを始めて1ヶ月の初心者です。 下記のコードについて質問です。 シート"strage2"のA1からA15のデータをシート"strage1"と比較し、違ったら更新します。 更新したデータだけを、まとめてメッセージボックスで返したいのです。 しかし、返してくるのは一番最後に処理した値だけなのです。 何が間違いでしょうか? ご指南よろしくお願いいたします。 --------------------------- Sub 何を書き換えたかMsgBox() Dim i As Integer Dim myMsg As String i = 1 For i = i To 15 If Sheets("strage1").Cells(i, 1) <> Sheets("strage2").Cells(i, 1) Then myMsg = Sheets("strage1").Cells(i, 1).Value & "から" & Sheets("strage2").Cells(i, 1) & "に変更しました" & vbCrLf Sheets("strage1").Cells(i, 1).Value = Sheets("strage2").Cells(i, 1) Else End If Next i MsgBox myMsg End Sub -------------------------------------- 以上です。よろしくお願いします。