![](/img/trans.png)
[英]Excel VBA ByVal Target As Range Does not update Target Worksheet when excuting from a function cell
[英]Data clearing when using Target to update range
我有以下宏
Dim rng As Range
Set rng = Target.Parent.Range("D31")
If Target.Address <> rng.Address Then Exit Sub
Select Case rng.Value
Case "N/A": Result = "N/A"
Case "NA": Result = "N/A"
Case "": Result = ""
End Select
Range("E31, G31, H31, I31, J31, K31") = Result
End Sub
當我最初在 D31 中鍵入一個不是 NA 的值,然后在 E31 中鍵入一個值時,我在 E31 中看到了數據。 但是,如果我更新 D31(即原始值紅色、新值讀取和藍色),則 E31 中的值將被刪除。 有沒有辦法阻止這種情況發生?
Range("E31, G31, H31, I31, J31, K31") = Result
放入條件中If Target.Value = "" Or Result <> ""
。rng
變量。If Target <> Range("D31") Then Exit Sub
Select Case Target.Value
Case "N/A": Result = "N/A"
Case "NA": Result = "N/A"
Case "": Result = ""
End Select
If Target.Value = "" Or Result <> "" Then
Range("E31, G31, H31, I31, J31, K31") = Result
End If
現在E31, G31, H31, I31, J31, K31
值僅在您在D31
中輸入“N/A”、“NA”或“”時才會發生變化。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.