运行时错误2100 - 格式化问题

时间:2016-01-20 18:35:35

标签: access-vba ms-access-2010

我正在运行创建每周计划的代码,并且根据时间/日期进行大量的即时格式化以便将事物放在正确的位置,并根据在此期间安排的约会数量调整宽度给定的时间段。我定期得到运行时错误2100:控件或子窗体控件对于代码的特定行上的这个位置来说太大了,我不能为我的生活找出原因。当我查看基础数据时,我无法看到在该时间范围内发生的更多约会会导致它超出其限制或任何范围。也就是说,我对这些格式化功能并没有太多的了解,也没有深入了解它。它大约有95%的时间都有效,但我需要达到100%。

            If DateValue(!Schedule_Date) = dtCurrent And TimeValue(!StartTime) >= tmStart And TimeValue(!StartTime) < tmEnd And intLabel > 1 Then 'Conflicting appointments, reset width of previous control and adjust width & start accordingly
            Me.Controls("lbl" & (intLabel - 2)).Width = (lngWidth / 2) 'Half the width
            ctl.Width = lngWidth / 2
            lngLeft = 1260 + (DateDiff("d", dtWeekOf, !Schedule_Date) * 1980) + 980 '1260 buffer + 1.375" depending on the day
        Else
            ctl.Width = lngWidth
            lngLeft = 1260 + (DateDiff("d", dtWeekOf, !Schedule_Date) * 1980)
        End If

        lngTop = 720 + (DateDiff("n", #8:00:00 AM#, IIf(TimeValue(!StartTime) < #8:00:00 AM#, #8:00:00 AM#, TimeValue(!StartTime))) * lngMinute) '.5" header + #minutes down the timeline
        lngheight = (DateDiff("n", TimeValue(!StartTime), TimeValue(!EndTime)) * lngMinute)

        ctl.Top = lngTop
        ctl.Left = lngLeft
        If lngheight < 0 Then ''Typically an AM/PM Discrepancy on the appointment
            MsgBox !ClientName & " has an appointment on " & DateValue(!Schedule_Date) & " from " & TimeValue(!StartTime) & " to " & _
                TimeValue(!EndTime) & " (" & !Schedule_Desc & ") that cannot print correctly. Please edit the appointment " & _
                "time as needed before printing the schedule.", vbOKOnly
            ctl.Height = 450 'Set it for 50 minutes in the meantime
        Else
            ctl.Height = lngheight
        End If

生成错误的行是

            ctl.Left = lngLeft

我尝试过降低这个值,但最终却搞砸了其他所有内容的格式。任何帮助都会非常感激,这让我疯狂!

0 个答案:

没有答案