Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
需要根据excel vba中列表中的另一个单元格值更新单元格中的值_Excel_Vba_If Statement_Updates - Fatal编程技术网

需要根据excel vba中列表中的另一个单元格值更新单元格中的值

需要根据excel vba中列表中的另一个单元格值更新单元格中的值,excel,vba,if-statement,updates,Excel,Vba,If Statement,Updates,我有启用Excel宏的工作表-Chart.xlsm-其中的值是从列表中选择的: 我的目标是-当选择D列(工作日类型)=“休息日”时,我希望E列(工作日结果)和F列(原因)将自动更新为“不适用”值 我选择的(工作日类型),(工作日结果)和(原因)列的值存储在同一个宏电子表格文件中,但如果这很重要,则存储在单独的表格中 我不是vba高手,所以我尝试使用以下代码(没有成功): 如果希望在D列中选择值时运行代码,可以尝试此操作 Private子工作表\u更改(ByVal目标作为范围) 如果Target

我有启用Excel宏的工作表-Chart.xlsm-其中的值是从列表中选择的:

我的目标是-当选择D列(工作日类型)=“休息日”时,我希望E列(工作日结果)和F列(原因)将自动更新为“不适用”值

我选择的(工作日类型),(工作日结果)和(原因)列的值存储在同一个宏电子表格文件中,但如果这很重要,则存储在单独的表格中

我不是vba高手,所以我尝试使用以下代码(没有成功):


如果希望在D列中选择值时运行代码,可以尝试此操作

Private子工作表\u更改(ByVal目标作为范围)
如果Target.Column=4,则
如果Target.Value=“休息日”,则
Application.EnableEvents=False
Target.Offset(,1).Resize(,2).Value=“不适用”
Application.EnableEvents=True
如果结束
如果结束
如果结束

你把代码放在哪里了?@norie我把它放在右键单击下,查看代码,工作表,更改它会给出错误“预期的然后或转到”
    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