喫茶XRAYトップページ

[スレッド全体
]

[11758] Excelのアクティブセルの位置の取得返信 削除
2018/3/13 (火) 00:23:13 ☆康☆ヾ
Mr. XRay さん

困ったときのXRayさん頼みです。以下のことについて、ぜひ宜しくお願いします。

ここのサイトのおかげで、最近、EXCELのファイルを読み書きできるようになり、
とても助かっております。
本当にありがとうございます。

今回も、EXCELファイルにワンクリックで数個の既定の文字列を代入すると
いう必要性にかられ、Delphiでプログラムを作りました。

基本的なものはできたのですが、今日、同僚に試験運用をさせたところ、
人間のわがままに対応できないことに気がつきました。

Delphiで、Excelのセルを指定して、そこに文字列を記入後、下に入力セル
を下げていくようにしているのですが、あっ、入力ミスした、あるいは、
やはりここのセルはこちらの文字列の方がいいなと思って、Excelのセルを
クリックしても、Delphiはそんなことは感知しないので、入力は前回の続きに
忠実に入力していくことになります。

で、Excel側でアクティブセルを変えたとき、それをDelphi側で検知して
入力セルを変えるようにしようと思い、文字列入力直前にアクティブセルの
検出をしようと思い、

ACol := WorkSheet.ActiveCell.Colmun
ARow := WorkSheet.Selection.Row

などの命令を確かめてみましたが、残念ながら、
「メソッド'Selection'はオートメーションオブジェクトでサポートされていません。」
というつれないエラーメッセージが表示され、動作しません。

Excelのアクティブセルの列・行の位置取得を教えていただけると、大変助かります。

ぜひ、よろしくお願いします。

[11761] Re:Excelのアクティブセルの位置の取得返信 削除
2018/3/13 (火) 09:39:18 Mr.XRAY
> ACol := WorkSheet.ActiveCell.Colmun
> ARow := WorkSheet.Selection.Row
>
> などの命令を確かめてみましたが、残念ながら、
> 「メソッド'Selection'はオートメーションオブジェクトでサポートされていません。」
> というつれないエラーメッセージが表示され、動作しません。


ちなみに VBA のヘルプで ActiveCell を調べてみると以下のようになっています.
何か気が付きません ?


[11762] Re2:Excelのアクティブセルの位置の取得返信 削除
2018/3/13 (火) 18:07:33 SO

[11766] Re3:Excelのアクティブセルの位置の取得返信 削除
2018/3/13 (火) 21:19:22 ☆康☆ヾ
▼ SOさん
> すごいヒント。
>
>
> ActiveCellはRange オブジェクトを返します。
> https://msdn.microsoft.com/ja-jp/VBA/Excel-VBA/articles/application-activecell-property-excel
> https://msdn.microsoft.com/ja-jp/vba/excel-vba/articles/window-activecell-property-excel
>
> Range オブジェクト
> https://msdn.microsoft.com/ja-jp/VBA/Excel-VBA/articles/range-object-excel


レスありがとうございます。

なるほど、このあたりのことも勉強しないとダメですね。

有用な情報、ありがとうございました。

[▼次のスレッド]
INCM/CMT
Cyclamen v3.82