返回列表 上一主題 發帖

[發問] 如何設定在輸入"氣球"時~提示訊息!(已解決,非常感謝G,O,J大的幫忙)

[發問] 如何設定在輸入"氣球"時~提示訊息!(已解決,非常感謝G,O,J大的幫忙)

本帖最後由 av8d 於 2011-9-14 16:59 編輯

例如我在K5輸入了氣球~當場就會跳出提示訊息"請事先打氣"~

我測試了一下~可惜失敗了~
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
[K2].Sort Key1:=Range("K2")
If Range("K2") = "氣球" Then
    MsgBox 請事先打氣
End If
End Sub

回復 1# av8d
MsgBox "請事先打氣"

TOP

回復 2# GBKEE


    我的程式好像寫錯了~不知道是要重寫還是要修改了..

TOP

首先要選對使用什麼事件
我在K5輸入了氣球~當場就會跳出提示訊息"請事先打氣"~
這種要求使用的應該是 Worksheet_Change事件
在改變或輸入儲存格時響應。
若滑鼠點擊K5時要跳出提示,則用你現在的Worksheet_SelectionChange事件
另外:
例如我在K5輸入了氣球...
跟後面的If Range("K2") = "氣球" Then
   完全不搭嘎

TOP

回復 4# oobird


    大大您好~我自己測試了下~找到一個很類似的方法~
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Target.Cells.Count > 1 Then Exit Sub

If Union(Target, [K:K]).Address <> [K:K].Address Then Exit Sub

If Target = "氣球" Then
MsgBox "注意:氣球必須事先打氣。"
End If

End Sub

以上會針對K欄儲存格去判斷~當點到有"氣球"字樣的儲存格立即會跳出注意視窗

而我的需求則是當該儲存格輸入氣球的時候跳出注意視窗~我該如何改寫呢?

TOP

而我的需求則是當該儲存格輸入氣球的時候跳出注意視窗~我該如何改寫呢
前面不是說了嗎?
這種要求使用的應該是 Worksheet_Change事件
在改變或輸入儲存格時響應。
你可試試:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Or Target.Column <> 11 Then Exit Sub
If Target = "氣球" Then
MsgBox "注意:氣球必須事先打氣。"
End If
End Sub

若你堅持用Worksheet_SelectionChange事件
神仙都幫不了你。

TOP

回復 6# oobird

可能是樓主未明白 Worksheet_SelectionChange 和 Worksheet_Change 的分別吧~
這個地方我以前亦費了很多時間才理解 .

這裡有個不錯的解說:

http://gb.twbts.com/index.php/topic,717.0.html

TOP

        靜思自在 : 【為善競爭】人生要為善競爭,分秒必爭。
返回列表 上一主題