VBA讲的是逻辑,那么从逻辑上来说
单元格的位置可以作为坐标来反馈,故可以使用Cells(SelectionRow, SelectionColumn)来确定当前光标所处的坐标,但这仅仅局限于一个单元格,cells(r,c)分别为行号和列号,通过坐标来判断光标所处位置。同样的,如果用cells(r,c+1)则可以 *** 作光标所处单元格的右数1个单元格的属性,并且在 *** 作右侧单元格时光标依然在当前的单元格上,所以如果下一条命令是cells(r+1,c)则可 *** 作下方相邻单元格,举个例子就是如果cells(r,c)是A1,cells(r,c+1)就是B1,cells(r+1,c)是A2
那么只要让textbox的值 = Cells(SelectionRow, SelectionColumn)Value 即=cells(r,c)的值,就可以让textbox显示出当前光标所处单元格的值。也就是无论你光标移动到哪里,窗体都能显示出光标所处的单元格的值
最后,你提到的“右击”,VBA无法判断左击还是右击,但无论你怎么击都属于“选中 or 激活”这个 *** 作,所以 无论你左击还是右击某个单元格,Cells(SelectionRow, SelectionColumn)都能指出当前激活单元格的坐标。
表单控件
Sub 显示行号()
MsgBox ActiveSheetShapes("按钮 1")BottomRightCellRow
End Sub
存放代码参考
Excel数据如何快速排列
ActiveX控件
Private Sub CommandButton1_Click()
MsgBox Shapes("CommandButton1")BottomRightCellRow
End Sub
Excel工作表被修改后自动升序排列
代码放在
使用VBA获取工作表里边文本框、图形的文本数据时,在不确定文本框、图形数量的情况下,可以使用“For Each……In……Next”对工作表里面的每一个文本框、图形进行访问,然后使用“TextFrame2TextRangeText”获取里边的文本数据写入单元格。
VBA程序如下截图,shp为工作表Sheet1里边所有图形中的一个(每执行一次For循环就提取一个,不重复)。
注上图的VBA程序引用自百度经验《使用VBA提取文本框的文本数据》
以上就是关于VBA中如何获取当前鼠标位置全部的内容,包括:VBA中如何获取当前鼠标位置、VBA如何获取宏按钮的所在的行号或列号、在excel中的VBA里如何使用批量读取控件(如文本框)中的数据。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)