Sub Crons()
Dim s1 As Worksheet, s2 As Worksheet
Dim check1 As Boolean, check5 As Boolean, check10 As Boolean, flow As Boolean, speed As Boolean, motor_power As Boolean
Set s1 = ThisWorkbook.Worksheets(1)
Set s2 = ThisWorkbook.Worksheets(2)
check1 = s2.CHECKBOXES("Check Box 1").Value = xlOn
check5 = s2.CHECKBOXES("Check Box 5").Value = xlOn
check10 = s2.CHECKBOXES("Check Box 10").Value = xlOn
flow = s1.Range("B26").Value = "Flow(from fill level)"
speed = s1.Range("B24").Value = "Speed"
motor_power = s1.Range("B25").Value = "Motor Power"
If check1 Or _
((check10 Or check5) Or _
(flow Or speed) Or _
(motor_power)) Then
s1.Range("B30").Value = "Activate anomaly detection" And _
s1.Range("B31").Value = "Activate Operating hour" And _
s1.Range("B32").Value = "Activate cycle time"
Else
s1.Range("B30").Value = vbNullString And _
s1.Range("B31").Value = vbNullString And _
s1.Range("B32").Value = vbNullString
End If
End Sub
uj5u.com熱心網友回復:
只是不要使用AND!
If check1 Or _
((check10 Or check5) Or _
(flow Or speed) Or _
(motor_power)) Then
s1.Range("B30").Value = "Activate anomaly detection"
s1.Range("B31").Value = "Activate Operating hour"
s1.Range("B32").Value = "Activate cycle time"
Else
s1.Range("B30").Value = vbNullString
s1.Range("B31").Value = vbNullString
s1.Range("B32").Value = vbNullString
End If
uj5u.com熱心網友回復:
你誤解了And運營商。它有兩個目的:
- 一個邏輯運算子,類似于
Or您在If陳述句中使用的。而True Or False等于True,True And False等于False。 - 位運算子,采用兩個整數運算元并回傳一個由
1兩個運算元中存在的位組成的值。例如,14 And 7= 二進制1110 And 0111= 二進制0110= 6。
嘗試將它用作每個代碼的程式陳述句(“執行 X,然后執行 Y”)不僅不正確,而且毫無意義,因為這是兩個陳述句按順序的正常行為。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/476953.html
下一篇:選項按鈕不通過改變下拉內容來開關
