0

我最近开始研究 VBA,但遇到了一个我无法解决的问题

我创建的宏必须复制一个文本块,它由选中的复选框触发,如果未选中该复选框,则 textblok 必须取消

这是他的代码

Private Sub CheckBox1_Click()

    If Sheets("Blad1").CheckBox1.Value = True Then Sheets("Blad3").Range("C2").Value = 1
    If Sheets("Blad1").CheckBox1.Value = False Then Sheets("Blad3").Range("C2").Value = 0

    If Sheets("Blad3").Range("C2").Value = 1 Then 
       Sheets("Blad1").Range("B7:B15").Value.Copy Destination = Sheets("Blad2").Range("A1:B8").Value
    End If

    If Sheets("Blad3").Range("C2").Value = 0 Then
    End If

    Application.Goto Worksheets("Blad2").[A1:A9], True
    Range("A1:A9").Clear

End Sub
4

1 回答 1

3

看起来您的代码只需要整理一下。尝试这个:

Private Sub CheckBox1_Click()

If Sheets("Blad1").CheckBox1.Value = True Then 
    Sheets("Blad3").Range("C2").Value = 1
Else
    Sheets("Blad3").Range("C2").Value = 0
End IF


If Sheets("Blad3").Range("C2").Value = 1 Then
  Sheets("Blad1").Range("B7:B15").Copy 
  Sheets("Blad2").Range("A1").PasteSpecial xlValues
Else
  Sheets("Blad2").Range("A1:A9").Clear
End If

End Sub
于 2013-03-14T11:13:10.290 回答