Excel VBA单元格选取对话框

   Excel VBA中引用单元格已经很简单了。但是如何像输入函数时一样,自由的选择单元格区域,以便更好地实现人机交互呢?

   这里用到的函数 InputBox,里面的参数很简单,Type:=8意思是返回的值是Range,当然也可以是公式、数值或其他,具体可参见Help。

   最后,通过Range的Column属性和Columns.Count属性,返回选择区域的列号及列数。有了行号、行数、列号、列数对该单元的的操作就很简单了。

   附一段代码:

Sub GetRange()

Dim rng As Range

On Error Resume Next

Set rng = Application.InputBox(prompt:=”输入单元格区域或者直接选取单元格”, Type:=8)

If rng Is Nothing Then

   MsgBox “操作取消”

Else

   rng.Select
  
   MsgBox “已选择单元格区域第一列的列号为” & rng.Column & “。共有” & rng.Columns.Count & “列。”
  
   MsgBox “已选择单元格区域第一行的行号为” & rng.Row & “。共有” & rng.Rows.Count & “行。”   

End If

End Sub

 » 本站地址:http://www.gomoth.com

标签: