Discussion:
由座標找回儲存格的位置
(时间太久无法回复)
daniel
2005-08-18 02:57:42 UTC
Permalink
ŠUŠìŠn

°²³]§ÚŠ³ activesheet ªº®yŒÐ Šp : 16.5 , 17
¥i¥H¥Ñ³o­ÓŒÆ­È§äŠ^žÓÀxŠs®æ¶Ü ?

thx
chijanzen
2005-08-18 04:45:02 UTC
Permalink
你好:

可以的,使用 RangeFromPoint 方法就能取得 儲存格的位置

x 必選的 Long 資料類型。此值代表從頂部開始到螢幕左邊緣的橫向距離 (以像素為單位)。

y 必選的 Long 資料類型。此值代表從左部開始到螢幕頂部的直向距離 (以像素為單位)。


範例:

Sub test()
x1 = 200: y1 = 200
'取得螢幕上指定座標位置的 Shape 或 Range 物件
Set currentRng = ActiveWindow.RangeFromPoint(x1, y1)
If currentRng Is Nothing Then Exit Sub
MsgBox currentRng.Address
End Sub


或參考範例
Excel 公式檢視方塊
http://www.vba.com.tw/plog/post/1/189
--
天行健君子以自強不息

http://www.vba.com.tw/plog/


"daniel" 來函:
各位好
假設我有 activesheet 的座標 如 : 16.5 , 17
可以由這個數值找回該儲存格嗎 ?
thx
unknown
2005-08-18 12:25:35 UTC
Permalink
這個問題困擾了我很久,沒想到真的有解


"chijanzen" 來函:
Post by chijanzen
可以的,使用 RangeFromPoint 方法就能取得 儲存格的位置
x 必選的 Long 資料類型。此值代表從頂部開始到螢幕左邊緣的橫向距離 (以像素為單位)。
y 必選的 Long 資料類型。此值代表從左部開始到螢幕頂部的直向距離 (以像素為單位)。
Sub test()
x1 = 200: y1 = 200
'取得螢幕上指定座標位置的 Shape 或 Range 物件
Set currentRng = ActiveWindow.RangeFromPoint(x1, y1)
If currentRng Is Nothing Then Exit Sub
MsgBox currentRng.Address
End Sub
或參考範例
Excel 公式檢視方塊
http://www.vba.com.tw/plog/post/1/189
--
天行健君子以自強不息
http://www.vba.com.tw/plog/
"daniel" 來函:
各位好
假設我有 activesheet 的座標 如 : 16.5 , 17
可以由這個數值找回該儲存格嗎 ?
thx
daniel
2005-08-19 06:49:19 UTC
Permalink
ÁÂÁÂ
¬ãšs€€
¥i¥Hªº¡AšÏ¥Î RangeFromPoint €èªkŽN¯àšú±o ÀxŠs®æªºŠìžm
x ¥²¿ïªº Long žê®ÆÃþ«¬¡CŠ¹­È¥Nªí±q³»³¡¶}©lšì¿Ã¹õ¥ªÃäœtªºŸîŠV¶ZÂ÷ (¥H
¹³¯À¬°³æŠì)¡C
y ¥²¿ïªº Long žê®ÆÃþ«¬¡CŠ¹­È¥Nªí±q¥ª³¡¶}©lšì¿Ã¹õ³»³¡ªºªœŠV¶ZÂ÷ (¥H¹³
¯À¬°³æŠì)¡C
Sub test()
x1 = 200: y1 = 200
'šú±o¿Ã¹õ€W«ü©w®yŒÐŠìžmªº Shape ©Î Range ª«¥ó
Set currentRng = ActiveWindow.RangeFromPoint(x1, y1)
If currentRng Is Nothing Then Exit Sub
MsgBox currentRng.Address
End Sub
©Î°ÑŠÒœdšÒ
Excel €œŠ¡À˵ø€è¶ô
http://www.vba.com.tw/plog/post/1/189
--
€ÑŠæ°·§g€l¥HŠÛ±j€£®§
http://www.vba.com.tw/plog/
"daniel" šÓšç¡G
Post by daniel
ŠUŠìŠn
°²³]§ÚŠ³ activesheet ªº®yŒÐ Šp : 16.5 , 17
¥i¥H¥Ñ³o­ÓŒÆ­È§äŠ^žÓÀxŠs®æ¶Ü ?
thx
Loading...