使用vba excel获取用户选定单元格的列

使用vba excel获取用户选定单元格的列,vba,excel,Vba,Excel,请参阅以下问题:。 我使用这行代码Set rng=Application.InputBox(提示:=“选择要编辑的单元格”,标题:=“要编辑的单元格”,键入:=8)要求用户选择单元格。如果选择的单元格在G列中,那么我需要调用一个子例程。因此,我需要找出所选单元格所在的列 谢谢你的帮助 使用rng.Column属性返回列号: Sub test() Dim rng As Range On Error Resume Next Set rng = Application.Inpu

请参阅以下问题:。 我使用这行代码
Set rng=Application.InputBox(提示:=“选择要编辑的单元格”,标题:=“要编辑的单元格”,键入:=8)
要求用户选择单元格。如果选择的单元格在G列中,那么我需要调用一个子例程。因此,我需要找出所选单元格所在的列


谢谢你的帮助

使用
rng.Column
属性返回列号:

Sub test()
    Dim rng As Range
    On Error Resume Next
    Set rng = Application.InputBox(Prompt:="Select the cell you want to edit.", title:="CELL TO EDIT", Type:=8)
    On Error GoTo 0

    If rng Is Nothing Then Exit Sub

    'column G=7
    If rng.Column = 7 Then
       'do something
    End If
End Sub
如果用户可以选择多个单元格,请更改

If rng.Column = 7 Then


使用
如果rng.Column=7,则使用
其中7对应于G.Btw,当用户按CANCEL且未选择任何内容时,不要忘记添加错误提示,这只是
rng.Column
。(G列=7)这是你的问题吗?哦,西莫科效果很好。我已经有了错误处理程序,但是谢谢你的提示。我使用了
如果rng为空,则退出Sub
。把它作为答案,我会接受的。
If Not Application.Intersect(rng, Sheets("Sheet1").Range("G:G")) Is Nothing Then