需要根据 excel vba 列表中的另一个单元格值更新单元格中的值
Need to update a value in a cell based on another cell value from the list in excel vba
我启用了 Excel 宏 sheet - Chart.xlsm- 其中的值是从列表中选择的:
我的目标是 - 选择D列D(WorkDay的类型)=“ Day off”,那么我希望列E(日期结果)和F(原因)将自动更新使用“不适用”值。 =14=]
我的(工作日类型)、(日结果)和(原因)列选择值存储在同一个宏传播sheet 文件中,但如果是,则存储在单独的 sheets 中重要
我不是 vba 专家,所以我尝试使用以下代码(但没有成功):
Private Sub Worksheet_Change(ByVal Target As Range)
Dim sh As Worksheet
Set sh = ActiveSheet
If sh.Cells(3,4) = “Day Off” Then
Sh.Cells(3,5) = “Not Applicable”
End If
End Sub
如果您希望代码在 D 列中选择一个值时 运行 您可以试试这个。
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 4 Then
If Target.Value = "Day Off" Then
Application.EnableEvents = False
Target.Offset(,1).Resize(,2).Value = "Not Applicable"
Application.EnableEvents = True
End If
End If
End If
我启用了 Excel 宏 sheet - Chart.xlsm- 其中的值是从列表中选择的:
我的目标是 - 选择D列D(WorkDay的类型)=“ Day off”,那么我希望列E(日期结果)和F(原因)将自动更新使用“不适用”值。 =14=]
我的(工作日类型)、(日结果)和(原因)列选择值存储在同一个宏传播sheet 文件中,但如果是,则存储在单独的 sheets 中重要
我不是 vba 专家,所以我尝试使用以下代码(但没有成功):
Private Sub Worksheet_Change(ByVal Target As Range)
Dim sh As Worksheet
Set sh = ActiveSheet
If sh.Cells(3,4) = “Day Off” Then
Sh.Cells(3,5) = “Not Applicable”
End If
End Sub
如果您希望代码在 D 列中选择一个值时 运行 您可以试试这个。
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 4 Then
If Target.Value = "Day Off" Then
Application.EnableEvents = False
Target.Offset(,1).Resize(,2).Value = "Not Applicable"
Application.EnableEvents = True
End If
End If
End If