[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『座標値からセル位置(番地)を指定するには』(たろう)
excel VBA で ワークシート上の座標点(セル番地で無い)数値(X,Y)を取得できた 時に,その点のセル番号(i,j) i:行番号, j:列番号 を知るにはどうしたらいいのでしょうか。 計算式 その,xy座標のセルを選択したいのですが。
その座標とは、何者? ドキュメント座標(ポイント値)あるいはスクリーン座標(ピクセル値 ないしはポイント値)? もし、スクリーン座標のピクセル値座標が取得できているなら、その座標をActiveWindow.RangeFromPointに与えると その場所にあるオブジェクトの取得ができる。それがセルならセルオブジェクト。 その場所にシェープ等があれば、セルではなくシェープになるけど。 その場合は、TopLeftCellあたりから、推測するかな?
ポイント値によるドキュメント座標であれば、スクリーン座標への変換にちょっと骨がおれるけど、枠固定されたシート以外では なんとかなるかな?
(ぶらっと)
追伸
もし、座標なるものがポイント値によるどきゅめんと座標なら、簡便法として以下もあるかな?
1.時間はかかるけど、シート上のセルを総なめにして、指定座標を内部領域に持つセルを見つける。 2.さらに、もし、セル幅や行の高さが標準のまま変更されていないシ[トであれば、単純計算で一発で求めることができるね。
(ぶらっと)
写真の座標はtop,leftプロパティで取得できていますので,そこからセルに換算したいのですが? (たろう)
じゃ、ドキュメント座標だね。
いずれにしても写真(シェープ)がわかっているんだから、そのTopやLeftの数値からどうこうといった ことは一切必要ないよ。
Sub test() MsgBox ActiveSheet.Shapes("写真の名前").TopLeftCell.Address(False, False) End Sub
(ぶらっと)
(ぶらっと)さん できました。ありがとうございました。
(たろう)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.