请帮忙修改下,Excel VBA代码 EXCEL的VBA代码,需要修改下

作者&投稿:双非 (若有异议请与网页底部的电邮联系)
'只写了主程序,你已经确定要查A1:A3,就直接设定就好了
'只是判断里面的值是不是1,2,3

Set target = Worksheets(1).Range("A1:A3")

For celrownum = 1 To 3

    If target.Cells(celrownum, 1).Value = 1 Or target.Cells(celrownum, 1).Value = 2 Or target.Cells(celrownum, 1).Value = 3 Then

    Select Case target.Cells(celrownum, 1).Value
    
    Case 1
    
    Case 2
    
    Case 3
    
    End Select
    
    Else: Exit Sub
    
Next


Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If InStr("123", Target) = 0 Or Len(Target) <> 1 Then Exit Sub
If Application.Intersect([a1:a3], Target) Is Nothing Then Exit Sub
Application.Run "宏" & Target.Value

End Sub

请帮修改VBA代码,如何关闭Excel?~

这是因为你的代码中,只是关闭了一个Excel文件。
事实上,应该关闭整个Excel软件。
VBA代码可以修改为:

Sub 完成工作() ActiveWorkbook.Save ThisWorkbook.Application.Quit '或者Application.QuitEnd Sub即可。

把Target全部换成Target(1, 1)试试
如果双击合并单元格不想执行程序,在第一行(If Target.Value "" )前加一行
If Target.count>1 then exit sub