有条件地使用VBA获取复选框以“检查”

时间:2019-01-17 21:20:40

标签: excel vba

我正在尝试在左侧的复选框的金色列中获得一个框,以检查原始计划下相应列中的日期是否存在,并检查复选框的白色列中是否存在一个框检查日期是否在“更新的估算”下的相应列中。

这是很新的东西,我已经玩了一段时间了,无法正常工作。

这是我正在谈论的工作表:
Here is the sheet i am talking about

1 个答案:

答案 0 :(得分:1)

这些类似于ActiveX复选框,因此这将应用于此答案。如果不是这种情况,那么希望这将在5年后对其他人有所帮助。

无论如何,假设您将复选框cb_A1命名为左侧复选框,将cb_B1命名为右侧。您可以通过在复选框名称前附加Sheet's Codename来更改这些复选框的值。示例:

Sheet1.cb_A1.Value = True
' ^^^   ^^^
'  |     ↳ Name of Checkbox
'  ↳ Sheet's Codename

由于您的图片未包含列标题,因此假设原始日期的列为E。您可以按以下方式在此列中执行检查:

If IsDate(Sheet1.Range("E1")) And Sheet1.Range("E1").Value > 0 Then 
    Sheet1.cb_A1.Value = True
Else
    Sheet1.cb_A1.Value = False
End If