2010-06-11 66 views
3

我想改變我的複選框的值設置爲true根據另一個單元格的值如何設置在VBA檢查物業

if range("A1").value = "green" then 
Checkbox1.value= true 

end if 

如何我的價值屬性更改爲(格式或控件工具箱)對於多個複選框同時爲真

由於某種原因,我嘗試過的代碼根本沒有做任何事情。 P.S.我使用的格式複選框

回答

5

這將改變所有的複選框

Sub Changeboxes() 

    Dim cb As CheckBox 

    If Sheet1.Range("a1").Value = "green" Then 
     For Each cb In Sheet1.CheckBoxes 
      cb.Value = True 
     Next cb 
    End If 

End Sub 

如果需要指定特定的複選框,然後

Sub ChangeSomeCbs() 

    If Sheet1.Range("a1").Value = "green" Then 
     Sheet1.CheckBoxes("Check Box 1").Value = True 
     Sheet1.CheckBoxes("Check Box 2").Value = False 
     Sheet1.CheckBoxes("Check Box 3").Value = True 
    End If 

End Sub 

複選框和複選框是隱藏屬性。你不會有智慧感,但他們工作。

+0

我試圖在我的表單上指定複選框,我想在其中添加複選標記。例如,對於checkbox1,我希望用戶看到它打勾。 – user362729 2010-06-11 20:39:24

+0

謝謝你的解決方案。它像一個魅力工作! – user362729 2010-06-14 19:06:16

0

也能正常工作對我來說:

If range("O26").Value = "green" Then 
    CheckBox1.Value = True 
    CheckBox2.Value = True 
End If 

如果您是在設計模式,這將無法正常工作。

+0

該代碼給我一個對象所需的錯誤(424)我也試過把我的第一個Checkbox.value = true語句後,但它不起作用。 – user362729 2010-06-11 20:36:17