標題:
[發問]
如何讀取矩陣資料的問題
[打印本頁]
作者:
Helain
時間:
2011-11-1 20:02
標題:
儲存格對應的問題
我想從table1 任何cell, 去table2找尋對應的cell
Ex: 我選定table 1“C6” , table2 對應的是C14
該如何寫呢?
作者:
Hsieh
時間:
2011-11-1 20:46
回復
1#
Helain
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, [C6:F9]) Is Nothing Then Exit Sub
MsgBox "選取" & Target.Address
MsgBox "對應" & Application.Index([C14:F17], Target.Row - 5, Target.Column - 2).Address
End Sub
複製代碼
作者:
GBKEE
時間:
2011-11-1 21:33
本帖最後由 GBKEE 於 2011-11-2 07:29 編輯
回復
1#
Helain
Private Sub Workbook_Open() 'ThisWorkbook 的程序 檔案開啟時自動執行
Ex
End Sub
Private Sub Ex() 'ThisWorkbook 的程序
With Sheet1
.Names.Add "table1", .Range(.[C6], .[C6].End(xlToRight).End(xlDown)) '定義名稱
.Names.Add "table2", .Range(.[C14], .[C14].End(xlToRight).End(xlDown)) '定義名稱
End With
End Sub
複製代碼
Private Sub Worksheet_SelectionChange(ByVal Target As Range) '工作表1的程序
Dim R As Double, C As Double
If Intersect(Target, [table1]) Is Nothing Then Exit Sub
R = Target.Row - [table1].Cells(1).Row + 1
C = Target.Column - [table1].Cells(1).Column + 1
MsgBox "選取" & Target(1).Address(0, 0) & " 對應 " & [table2].Cells(R, C).Address(0, 0)
End Sub
複製代碼
作者:
Helain
時間:
2011-11-2 11:25
標題:
如何讀取矩陣資料的問題
我想要問,如何讀取矩陣資料的問題
有2個檔案, table A, table B
tableB是矩陣資料
table A 也是呈現矩陣的方式去運算
如:
i=1 j = 5,
A=4 列
B=5 欄
"如何用不同的A,B去讀取table B的
cells(3,7).value= 27 "讀取tableB 的數值
作者:
Helain
時間:
2011-11-2 21:20
其實我看不太懂兩位大大提出的想法,
如果先想簡單一點, 我有2個行列數相同的table在同一個sheet裡.
我選取Table A其中一個cell位置時, 也想在table B 找出與table A相對應的值
如果用OFFSET這個函數來做呢?
不知道要如何讀取Table A 所選取的位置資訊
table B的對應值=OFFSET(tableB參考值 , 在tableA 選取的列, table B選取的欄 )
還是有其他方法可以呢??
感謝大大們為我解答
作者:
Hsieh
時間:
2011-11-2 23:08
回復
5#
Helain
作用中儲存格就是ActiveCell
ActiveCell.Row取得作用儲存格列號
ActiveCell.Column取得作用儲存格欄號
作者:
Helain
時間:
2011-11-4 16:17
我想要問說
假設有一堆數值資料, 選取最大值
想得到該最大值的位置
就是另他選到的那個值為activecell
該如何做呢?
作者:
Helain
時間:
2011-11-4 16:23
可以為我解釋一下Intersect的用法嗎?
If Intersect(Target, [table1])
Is Nothing
Then Exit Sub
通常寫is nothing.....是指什麼意思
作者:
luhpro
時間:
2011-11-6 21:07
本帖最後由 luhpro 於 2011-11-6 21:34 編輯
回復
8#
Helain
我的理解是 :
Is Nothing 口語化的解釋大約就是 "什麼都沒有",
引伸過來 VBA 就是找不到符合處理結果(或計算條件)的標的,
其意大約也就是 "空值"(NULL).
但我試過若改成
If Intersect(Target, [table1]) ="" Then Exit Sub 會有錯誤,
但原因我就想不透了.
回復
10#
Hsieh
謝謝你的解說,
這樣我就了解了.
作者:
Hsieh
時間:
2011-11-6 21:30
回復
9#
luhpro
Intersect會傳回Range物件
當物件變數為非實體物件時即為Nothing
所以,Intersect必須以Nothing關鍵字表示非實體物件
若使用空字串"",此為字串型態之無字串表示
所以Intersect函數計算結果,若使用空字串將傳回資料型態錯誤
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)