标题标题为旋钮值

时间:2016-08-25 10:49:57

标签: vba label caption

我有一个问题,从标签标题加载值到旋钮按钮值和返回。我有一些来自报告的数据,但我只需要报告6-8个小时,所以我做了表格,我想设置开始时间和结束时间(yyyy,mm,dd hh:mm)然后我要删除行,哪里不是我的时间,所以我加载年,月,日,小时和分钟为Now()到标题,然后我需要加载标签的标题到旋钮的值,然后我需要更改标题值,如有数值调节钮。感谢您的帖子,对不起我的英语;)这是我的代码:

    Sub spust()

formtime.lblrok1.Caption = Format(Now, "yyyy")
formtime.lblmes1.Caption = Format(Now, "mm")
formtime.lblden1.Caption = Format(Now, "dd")
formtime.lblhod1.Caption = Format(Now, "hh")
formtime.lblmin1.Caption = Minute(Now)

If Len(formtime.lblmin1.Caption) = 1 Then
    formtime.lblmin1.Caption = "0" & Minute(Now)
End If

formtime.lblrok2.Caption = Format(Now, "yyyy")
formtime.lblmes2.Caption = Format(Now, "mm")
formtime.lblden2.Caption = Format(Now, "dd")
formtime.lblhod2.Caption = Format(Now, "hh")
formtime.lblmin2.Caption = Minute(Now)

If Len(formtime.lblmin2.Caption) = 1 Then
    formtime.lblmin2.Caption = "0" & Minute(Now)
End If

With formtime.spbutrok1
    'my problem -> .Value = CInt(formtime.lblrok1.Caption)
    .Min = 2010
    .Max = 2030

End With

formtime.lblrok1.Caption = CStr(formtime.spbutrok1.Value)

formtime.Show
End Sub

1 个答案:

答案 0 :(得分:0)

SpinButton可能非常棘手

您的问题是由于默认SpinButton控件边界为0(Min属性)和100(Max属性)并且您正在尝试设置其{ {1}}某些 20XX 号码的属性(之前已初始化Value)明显超过它!

似乎解决方案似乎推迟了这个设置:

lblrok1.Caption

但又出现了另一个With formtime.spbutrok1 .Min = 2010 .Max = 2030 .Value = CInt(formtime.lblrok1.Caption) End With 问题:

  • SpinButton标题与您必须在userform代码窗格中编码的Label值相关联,如下所示:

    SpinButton
  • 关于Private Sub spbutrok1_Change() With Me .lblrok1.Caption = .spbutrok1.value End With End Sub 边界的定义,如果当前 SpinButton已经介于它们之间,那么它将被设置为当前 ValueMin

  • 如果后一种情况适用并导致Max SpinButton)的实际更改,则会触发其“变更”( )'将标签标题再次更改为不是您期望的值的事件

    在您的情况下,结果将Value SpinButton和相应的Value Label设置为2010 ...

所以你可能想采用这样一个序列:

Caption

除此之外,日期问题(月份限制不同,闰年引发更多混乱)可能会给您带来更多编码问题:如果是这种情况,您可能想要发布其他帖子......