Board logo

標題: [發問] 請問有無其他方式直接得知定義名稱範圍的列號嗎? [打印本頁]

作者: dechiuan999    時間: 2010-9-22 09:50     標題: 請問有無其他方式直接得知定義名稱範圍的列號嗎?

各位大大:

   小弟另有一問題請敎各位大大,
在選定的儲存格位置已可判斷出是
位在定義名稱的範圍內。因此,其
找出符合的儲存格位置其列號為
指定的工作表列號,而非屬定義名稱
的列號。
  請問一般性是依找出的列號再依
定義名稱的位置倒算出其定義名稱
的列號或是另有其他方式可直接找
出定義名稱的列號嗎?

例如:有一工作表

定義名稱:student
定義範圍:C8-G14

現SELECTION位置為C12

其列號必為 12
而非定義名稱的列號 5

Sub aa()

    Dim mSht As Worksheet
    Dim mRng As Range
    Dim mRow As Integer
   
    Set mSht = Worksheets("test")
    With mSht
        If TypeName(Selection) = "Range" Then
            If Not Intersect(Selection, [student]) Is Nothing Then
                Set mRng = Selection
                MsgBox mRng.Address
                mRow = mRng.Row
               
            End If
        End If
               
    End With
   
  End Sub

謝謝各位大大。
作者: 暗黑    時間: 2010-9-22 11:08

  1. Private Sub Worksheet_Change(ByVal Target As Range)
  2. Target.Column    '選取儲存格起始行數
  3. Target.Row        '選取儲存格起始列數
  4. Target.Count      '選取儲存格的數量
  5. ..
  6. ...
  7. end sub
複製代碼

作者: Hsieh    時間: 2010-9-22 11:35

MsgBox Selection.Row - [student].Row + 1
作者: dechiuan999    時間: 2010-9-22 12:10

超級版主大大好:

    小弟在此祝福各位大大
有一美好的中秋佳節。

   版主大大提供如此便捷的方式
真是另人讚賞。
  
感恩版主大大!




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)