在userform中复选框名称的连接

时间:2015-07-31 08:54:05

标签: vba excel-vba concatenation userform excel

我在用户表单中有40个复选框,名为ck1到ck40,因为我需要检查它们是否已经检查过但是它没有使用循环。我尝试过这样的事情:

For i = 1 To 40

       If Me.ck & i.Value = True Then
             ticked = True
             Exit For
      End If

Next i

Me.ck & i & .Value或许多其他事情。我也尝试使用Set,但我的任何一个都没有用,因为程序在Me.ck停止。我还没有找到任何使用串联的解决方案.. 我显然必须使用Me.因为我的代码在userform

我正在寻找任何解决方案

2 个答案:

答案 0 :(得分:2)

尝试以下代码:

For i = 1 To 40
    If Me.Controls("ck" & i).Value Then
        ticked = True
        Exit For
    End If
Next i

答案 1 :(得分:0)

你为什么要退出?您的代码将通过并执行第一个然后退出循环?下面应该没问题

NSMutableDictionary *dic = [[NSMutableDictionary alloc] init];
[dic setObject:[NSNumber numberWithBool:TRUE]  forKey:@"Pratik"];
[dic setObject:[NSNumber numberWithBool:FALSE] forKey:@"Sachin"];

if ([dic[@"Pratik"] boolValue])
{
    NSLog(@"Boolean is TRUE for 'Pratik'");
}
else
{
    NSLog(@"Boolean is FALSE for 'Pratik'");
}

if ([dic[@"Sachin"] boolValue])
{
    NSLog(@"Boolean is TRUE for 'Sachin'");
}
else
{
    NSLog(@"Boolean is FALSE for 'Sachin'");
}

如果你想要一些更有活力的东西,你可以使用

For i = 1 To 40
    If Me.Controls("ck" & i).Value Then
        Me.Controls("ck" & i).value = True
    End If
Next i