VBA访问使用高亮显示的字段

VBA访问使用高亮显示的字段,vba,ms-access,Vba,Ms Access,在当前access DB中,用户希望用鼠标高亮显示列中的特定单元格范围,并在vba脚本中使用此选择。(例如,他们选择一个范围->vba脚本使用特定值填充该范围) 我们的问题是:如何在VBA中定义此选定范围?有很多示例使用VBA高亮显示单元格,但没有说明如何在Access中的VB脚本中使用高亮显示的区域 这可能吗? 如果是,我们如何解决这个范围 谢谢你抽出时间 数据表视图中的表单(或表/查询)必须获取所选范围。以下内容主要来自联机帮助: Dim frm As Form Dim lngNumRows

在当前access DB中,用户希望用鼠标高亮显示列中的特定单元格范围,并在vba脚本中使用此选择。(例如,他们选择一个范围->vba脚本使用特定值填充该范围)

我们的问题是:如何在VBA中定义此选定范围?有很多示例使用VBA高亮显示单元格,但没有说明如何在Access中的VB脚本中使用高亮显示的区域

这可能吗? 如果是,我们如何解决这个范围

谢谢你抽出时间

数据表视图中的表单(或表/查询)必须获取所选范围。以下内容主要来自联机帮助:

Dim frm As Form
Dim lngNumRows As Long
Dim lngNumColumns As Long
Dim lngTopRow As Long
Dim lngLeftColumn As Long
Dim strMsg As String

' Datasheet that has the focus
Set frm = Screen.ActiveDatasheet

' Number of rows selected.
lngNumRows = frm.SelHeight

' Number of columns selected.
lngNumColumns = frm.SelWidth

' Topmost row selected.
lngTopRow = frm.SelTop

' Leftmost column selected.
'** Note: for me, this is always the actual left column + 1 **
lngLeftColumn = frm.SelLeft

' Display message.
strMsg = "Number of rows: " & lngNumRows & vbCrLf
strMsg = strMsg & "Number of columns: " & lngNumColumns & vbCrLf
strMsg = strMsg & "Top row: " & lngTopRow & vbCrLf
strMsg = strMsg & "Left column: " & lngLeftColumn
MsgBox strMsg, vbInformation
在我的Access 2010中,
.SelLeft
总是太高1。因此,如果我的选择从第一列开始,它将返回2。不确定它是否应该这样做


注意:
.SelTop
.SelHeight
在使用记录选择器选择记录时,也适用于表单视图中的连续表单。

范围是什么意思?表格行?当表格有子数据表时,第一列返回3,子数据表中的第一列返回-1.Hi,感谢您的输入!无论我们选择什么,msgbox都会返回相同的值(0行,1 n°列,3顶行,lngleftcolumn=empty)。知道为什么吗?编辑:activeform未选择行,是的子窗体this@Witloofdc你需要将代码> FRM < /代码>设置为子窗体。你好,谢谢你的帮助,考虑这个问题已经解决了!另外,在我们弄明白之后,我们偶然发现了这个页面:,供将来参考:D。谢谢!