我目前有一个小问题。我想出了活动工作表需要的宏,但我希望在另一个工作表中也能发生。当我在下面运行宏时,它不起作用。你们可以看看一下,然后告诉我怎么了吗?
Private Sub CommandButton1_Click()
Dim ws As Worksheet
Set ws = Log
ws.Shapes("Rectangle 1").TextFrame.Characters.Text = "test " & Worksheets("Introductie").Range("D22") & " op " & Now()
ws.Shapes("Rectangle 1").Fill.ForeColor.RGB = RGB(50, 205, 50)
End Sub
如果有任何问题,随时问我。
答案 0 :(得分:0)
“我希望在另一个工作表中也能做到这一点”
尝试类似的东西:
Private Sub CommandButton1_Click()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Sheets(Array("Sheet1", "Sheet2"))
ws.Shapes("Rectangle 1").TextFrame.Characters.Text = "test " & Worksheets("Introductie").Range("D22") & " op " & Now()
ws.Shapes("Rectangle 1").Fill.ForeColor.RGB = RGB(50, 205, 50)
Next ws
End Sub
尽管您在下面的评论令人困惑(与最初的问题相矛盾),但是Log
可能不是工作表的CodeName
,而仅仅是工作表的名称。在这种情况下:
Private Sub CommandButton1_Click()
Dim ws As Worksheet: Set ws = ThisWorkbook.Sheets("Log")
ws.Shapes("Rectangle 1").TextFrame.Characters.Text = "test " & Worksheets("Introductie").Range("D22") & " op " & Now()
ws.Shapes("Rectangle 1").Fill.ForeColor.RGB = RGB(50, 205, 50)
End Sub