Ms access 访问权赢得';“不要停止”;计算&引用;直到你在某个控件上晃动鼠标
我们在客户的站点上遇到此故障 在一个工作站(Access2K3,恰巧有一个触摸屏)上,在其中一个关键表单上,用户报告它正在挂起或冻结,左下角显示“计算…” 我们看了一眼,发现这是真的,只是我们注意到你可以通过稍微晃动鼠标来再次“释放”屏幕。然后将抖动缩小到一个特定的文本框。只要将鼠标移到这个文本框上,就可以释放屏幕,一切正常 文本框显示一些只读财务数据。当然,文本框在被释放之前是空白的,之后它会显示正确的数据 此控件和任何其他控件都没有MouseMove、MouseDown或MouseUp事件。文本框的控制源不可否认是微不足道的,它由IF组成,还使用VBA函数。然而,类似类型的复杂控制源在应用程序中的其他地方重复出现,不会导致问题,即使这种特殊的控制在其他机器上也不会导致问题 还有其他人经历过吗Ms access 访问权赢得';“不要停止”;计算&引用;直到你在某个控件上晃动鼠标,ms-access,mouseevent,Ms Access,Mouseevent,我们在客户的站点上遇到此故障 在一个工作站(Access2K3,恰巧有一个触摸屏)上,在其中一个关键表单上,用户报告它正在挂起或冻结,左下角显示“计算…” 我们看了一眼,发现这是真的,只是我们注意到你可以通过稍微晃动鼠标来再次“释放”屏幕。然后将抖动缩小到一个特定的文本框。只要将鼠标移到这个文本框上,就可以释放屏幕,一切正常 文本框显示一些只读财务数据。当然,文本框在被释放之前是空白的,之后它会显示正确的数据 此控件和任何其他控件都没有MouseMove、MouseDown或MouseUp事件。
同样出于调试目的-当Access连续几分钟报告它正在“计算…”时,是否有办法一步一步地查明到底发生了什么?您可以将状态栏文本设置为任何您喜欢的内容。尝试在处理任务结束时使用此行
Application.Echo True “Your Text Goes Here”
不知道为什么会在那只老鼠身上放晴 我在使用条件格式时也遇到过类似的问题。当我遇到这个问题时,我用两种不同的方法解决了它:
Private Const DefaultHLColor长=10092543'RGB(255、255、153);淡黄色
'---------------------------------------------------------------------------------------
'程序:HighlightRow
'日期时间:2/22/2008 3:27
作者:迈克
'目的:突出显示连续表单的细节部分。
'用法:1)添加绑定到唯一字段的文本框(首选主键)
'设置为连续视图的窗体。
'2)设置启用=否,锁定=是,背景色={Detail Section BackColor},
'背景色=正常,特殊效果=平坦,前景色=背景色
'3)展开文本框以填充整个详细信息部分,然后发送到后面。
'4)将其向下移动一个像素([Ctrl]+[{向下箭头键}])
“5)将以下内容添加到窗体的OnCurrent事件中:
'=HighlightRow([{TextBoxName}])
'注意:我们可以在OnCurrent事件中简单地刷新表单,但是
"(至少在2002年)没有一个坚如磐石的条件性计划实施
'格式化。当我们选择
'一个记录(突出显示),然后我们滚动表单,以便
'突出显示的记录不再可见,然后选择一个新记录,然后
“滚动到上一条记录,可悲的是,它仍然是
突出显示。
'---------------------------------------------------------------------------------------
'
函数HighlightRow(Ctl作为文本框,可选HLColor作为Long=DefaultHLColor)'vv
On Error GoTo Err_HighlightRow
应用程序。回显错误
带Ctl
.FormatConditions.Delete
如果Ctl.Parent.CurrentRecord为0,则
如果Not IsNull(.Value)和Not IsEmpty(.Value),则
如果是数值(.Value),则
.FormatConditions.Add acFieldValue、acEqual、.Value
其他的
.FormatConditions.Add acFieldValue、acEqual、“&.Value&”
如果结束
.FormatConditions(0)。背景色=HLColor
.FormatConditions(0)。前景色=HLColor
.FormatConditions(0).Enabled=False
如果结束
如果结束
以
退出HighlightRow:
应用程序。Echo True
退出功能
Err_HighlightRow:
日志错误错误编号,错误描述,“HighlightRow”
继续退出\u HighlightRow
端函数
我知道这个问题已经得到了回答,但我发现了一个奇怪的工作,可能会帮助人们
在Access 2007中我的大型报告中,条件格式导致它在打开状态栏中的“计算…”时卡住,类似于上面的问题。但是,我发现只有在侧边栏中选择报表并试图打开报表时才会发生这种情况
我创建了一个窗体,作为一个人造工具栏,带有一个按钮+嵌入式宏,触发OpenReport命令。以这种方式打开时,报告会立即打开!这确实是一件奇怪的事情,但它允许我保留条件格式
希望这可以帮助其他人,但不要忘记,当您处于设计模式时,如果您尝试切换到报告模式,它将挂起。关闭它并使用人造工具栏按钮
编辑:更进一步,我意识到这是有效的,因为按钮在打印预览模式下打开它。它挂起在报告模式下。这似乎是Access 2013中的新功能。我重新应用了所有条件格式,问题得到了解决。我正好遇到了这个问题(Access 2010)。我有一个表单和一个子表单。子窗体具有条件格式以突出显示所选记录,但是
Private Const DefaultHLColor As Long = 10092543 'RGB(255, 255, 153); Light Yellow
'---------------------------------------------------------------------------------------
' Procedure : HighlightRow
' DateTime : 2/22/2008 3:27
' Author : Mike
' Purpose : Highlight the detail section of a continuous form.
' Usage : 1) Add a textbox bound to a unique field (preferrably the primary key)
' to a form set to continuous view.
' 2) Set Enabled = No, Locked = Yes, BackColor = {Detail Section BackColor},
' BackStyle = Normal, SpecialEffect = Flat, ForeColor = BackColor
' 3) Expand the textbox to fill the entire detail section, Send to Back.
' 4) Move it down one pixel ([Ctrl] + [{down arrow key}])
' 5) Add the following to the form's OnCurrent event:
' =HighlightRow([{TextBoxName}])
' Notes : We could simply Refresh the form in the OnCurrent event, but Access
' (2002, at least) does not have a rock solid implementation of conditional
' formatting. The problem with Refreshing the form occurs when we select
' a record (which gets highlighted), then we scroll the form so the
' highlighted record is no longer visible, then select a new record, and
' scroll back to the previous record to see that, sadly, it is still
' highlighted.
'---------------------------------------------------------------------------------------
'
Function HighlightRow(Ctl As TextBox, Optional HLColor As Long = DefaultHLColor) 'vv
On Error GoTo Err_HighlightRow
Application.Echo False
With Ctl
.FormatConditions.Delete
If Ctl.Parent.CurrentRecord <> 0 Then
If Not IsNull(.Value) And Not IsEmpty(.Value) Then
If IsNumeric(.Value) Then
.FormatConditions.Add acFieldValue, acEqual, .Value
Else
.FormatConditions.Add acFieldValue, acEqual, """" & .Value & """"
End If
.FormatConditions(0).BackColor = HLColor
.FormatConditions(0).ForeColor = HLColor
.FormatConditions(0).Enabled = False
End If
End If
End With
Exit_HighlightRow:
Application.Echo True
Exit Function
Err_HighlightRow:
LogError Err.Number, Err.Description, "HighlightRow"
Resume Exit_HighlightRow
End Function