首页 > 解决方案 > 如何同步工作簿中的所有 Textbox1?

问题描述

我的工作簿有五张带文本框的工作表。Sheet1、Sheet2、……和 Sheet5。

下面的代码在每张纸上。

Private Sub TextBox1_Change()

If Len(TextBox1.Value) = 0 Then
ActiveSheet.AutoFilterMode = False

Else
  If ActiveSheet.AutoFilterMode = True Then
  ActiveSheet.AutoFilterMode = False

End If

ActiveSheet.Range("A2:C" & Rows.Count).AutoFilter field:=1, Criteria1:="*" & TextBox1.Value & "*"
End If

End Sub

我想同步TEXTBOXES所有工作表上的。

例如,如果我在TEXTBOX1Sheet1 中键入文本,则将在TEXTBOX1所有其他工作表中输入相同的文本。

而且我还想知道如何TEXTBOX一次清除每张纸。

标签: excelvbatextbox

解决方案


您可以在项目中添加模块并在其中添加此子(如果需要,调整工作表和文本框的名称):

Sub SetText(txt As String)
    Worksheets("Sheet1").TextBox1.Text = txt
    Worksheets("Sheet2").TextBox1.Text = txt
    Worksheets("Sheet3").TextBox1.Text = txt
    Worksheets("Sheet4").TextBox1.Text = txt
    Worksheets("Sheet5").TextBox1.Text = txt
End Sub

然后,在每个 TextBox 的 Change 事件中添加这个

Private Sub TextBox1_Change()
    SetText Me.TextBox1.Text
End Sub

要清除所有文本,您可以设置.TextBox1.Text = ""


推荐阅读