VBA excel,如果单元格(计数器,1)="text" 那么
VBA excel, if Cells(counter,1)="text" then
我正在尝试执行仅在特定单元格包含特定文本时才激活的 if 语句。有问题的单元格需要根据一个会改变的整数动态改变,到目前为止我尝试了多种方法但似乎没有任何效果。
If Cells(counter, 1).text = "text" then
If Cells(counter, 1).value = "text" then
If Range(Cells(counter, 1)).text = "text then
If Range(Cells(counter, 1)).value = "text then
这似乎是一个简单的过程,有人有解决方案吗?
谢谢,Sporre
编辑:
Private Sub CheckBox_Change()
If CheckBox.Value = True Then
'do stuff
End If
ElseIf CheckBox.Value = False Then
If Cells(1, counter).Value = "text1" Or Cells(1, counter).Value =
"text2" Or Cells(1, counter).Value = "text3" Then
'do stuff
End If
End If
End Sub
这是我收到错误消息的地方 "Application-definded or Object-defined error"。
编辑 2:
问题是我试图在几个不同的潜艇中调用计数器,但它不是 public 整数。感谢您的帮助!
这个行得通
if (Trim(ThisWorkbook.Worksheets("Sheet1").Cells(counter, 1).Value)="text") Then
这应该有效:
If Worksheets("Name of your worksheet").Cells(counter, 1).Value)="text" Then
'execute some code
End if
您不能先使用 End If
然后再使用 and ElseIf
。第一个完全结束 If
语句,这意味着您将不得不开始一个新的语句。根据您的编辑,我认为您的代码应如下所示:
Private Sub CheckBox_Change()
If CheckBox.Value = True Then
'do stuff
ElseIf CheckBox.Value = False Then
If (Counter < 1) Then
'Show an error if the counter is less than 1
MsgBox "Error: Counter less than 1", vbCritical
ElseIf Cells(1, counter).Value = "text1" Or Cells(1, counter).Value = "text2" Or Cells(1, counter).Value = "text3" Then
'do stuff
End If
End If
End Sub
我正在尝试执行仅在特定单元格包含特定文本时才激活的 if 语句。有问题的单元格需要根据一个会改变的整数动态改变,到目前为止我尝试了多种方法但似乎没有任何效果。
If Cells(counter, 1).text = "text" then
If Cells(counter, 1).value = "text" then
If Range(Cells(counter, 1)).text = "text then
If Range(Cells(counter, 1)).value = "text then
这似乎是一个简单的过程,有人有解决方案吗?
谢谢,Sporre
编辑:
Private Sub CheckBox_Change()
If CheckBox.Value = True Then
'do stuff
End If
ElseIf CheckBox.Value = False Then
If Cells(1, counter).Value = "text1" Or Cells(1, counter).Value =
"text2" Or Cells(1, counter).Value = "text3" Then
'do stuff
End If
End If
End Sub
这是我收到错误消息的地方 "Application-definded or Object-defined error"。
编辑 2: 问题是我试图在几个不同的潜艇中调用计数器,但它不是 public 整数。感谢您的帮助!
这个行得通
if (Trim(ThisWorkbook.Worksheets("Sheet1").Cells(counter, 1).Value)="text") Then
这应该有效:
If Worksheets("Name of your worksheet").Cells(counter, 1).Value)="text" Then
'execute some code
End if
您不能先使用 End If
然后再使用 and ElseIf
。第一个完全结束 If
语句,这意味着您将不得不开始一个新的语句。根据您的编辑,我认为您的代码应如下所示:
Private Sub CheckBox_Change()
If CheckBox.Value = True Then
'do stuff
ElseIf CheckBox.Value = False Then
If (Counter < 1) Then
'Show an error if the counter is less than 1
MsgBox "Error: Counter less than 1", vbCritical
ElseIf Cells(1, counter).Value = "text1" Or Cells(1, counter).Value = "text2" Or Cells(1, counter).Value = "text3" Then
'do stuff
End If
End If
End Sub