プロが教える店舗&オフィスのセキュリティ対策術

saと申します

社内業務ツールを作っているのですが
エクセルにおいて、ユーザーフォームで入力させて「登録」ボタンを押すと
内容確認のmsgboxが表示され、内容を確認するよう促しています

ところが、ユーザーフォームもmsgboxもwindowsの画面中央に表示されるのでmsgboxを毎回移動させてユーザーフォームをみなければなりません

そこでmsgboxをやめて、msgboxの内容をオフィスアシスタント(イルカを使用)
に表示させたました

With Assistant.NewBalloon
Assistant.Filename = "Dolphin.acs"
.Heading = "入力データ確認"
.Text = "入力データは正しいですか?" & Chr(13) _
& "請求台帳にデータを追加します"
.Animation = msoAnimationGreeting
.Button = msoButtonSetYesNo
.Show
End With
ここからmsoButtonSetYesNoで条件分岐する方法がわかりません
IF msoButtonSetYesNo = yes Then のような動きをしたいのですが頓挫してしまいました。どなたかご支援していただけませんか。 

A 回答 (1件)

ヘルプを見ましょうね。



.Showの戻り値が、選択したボタンのタイプになります。

ですから

If msoBalloonButtonYes = .Show Then
 ' 「はい」の場合
End If

というような感じになるかと思います。

※MsgBoxの場合はどうやってたんでしょうか? 笑

Balloon コントロールを使用する
http://msdn.microsoft.com/ja-jp/library/cc376937 …
    • good
    • 0
この回答へのお礼

早速の回答ありがとうございました

教えていただいた
Microsoft Office 2000/Visual Basic プログラマーズ ガイドの
「Balloon コントロールを使用する」を参考に以下のマクロで動きました
ありがとうございました

With Assistant.NewBalloon
Assistant.Filename = "Dolphin.acs"
'.Button = msoButtonSetNone
.Heading = "登録データ確認"
.Text = "入力データは正しいですか?" & Chr(13) _
& "請求台帳にデータを登録しますか?"
.Labels(1).Text = "はい"
.Labels(2).Text = "いいえ"

' バルーンを表示します。
intRetVal = .Show

' ユーザーの選択を保存します。
If intRetVal = 1 Then
Range("A18").Select
Else
Exit Sub
End If
End With

お礼日時:2009/05/31 15:39

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!