返回列表 上一主題 發帖

[發問] 選擇下拉式清單自動填入

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$E$4" Or Target.Address = "$F$4" Then
        Select Case Range("E4").Value
            Case "B4"
                Select Case Range("F4").Value
                    Case "C4"
                        Range("F5").Value = Range("F9").Value
                    Case "C5"
                        Range("F5").Value = Range("F10").Value
                    Case "C6"
                        Range("F5").Value = Range("F11").Value
                End Select
            Case "B5"
                Select Case Range("F4").Value
                    Case "C4"
                        Range("F5").Value = Range("F12").Value
                    Case "C5"
                        Range("F5").Value = Range("F13").Value
                    Case "C6"
                        Range("F5").Value = Range("F14").Value
                End Select
        End Select
    End If
End Sub
試一下看看

TOP

回復 3# bhsm


   幫您修改了一下,請試試看這個版本:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$E$4" Or Target.Address = "$F$4" Then
        If Range("E4").Value = "B4" Then
            Select Case Range("F4").Value
                Case "C4"
                    Range("F5").Value = Range("F9").Value
                Case "C5"
                    Range("F5").Value = Range("F10").Value
                Case "C6"
                    Range("F5").Value = Range("F11").Value
            End Select
        ElseIf Range("E4").Value = "B5" Then
            Select Case Range("F4").Value
                Case "C4"
                    Range("F5").Value = Range("F12").Value
                Case "C5"
                    Range("F5").Value = Range("F13").Value
                Case "C6"
                    Range("F5").Value = Range("F14").Value
            End Select
        End If
    End If
End Sub

主要的改動是將第一個 Select Case 改成 If...ElseIf...End If,因為您要根據 E4 的值來分別處理不同的情況。另外,您也可以考慮使用資料驗證功能來建立下拉式清單,這樣可能會更簡單一些。

TOP

        靜思自在 : 天上最美是星星,人生最美是溫情。
返回列表 上一主題