Excel (VBA)

Excel VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 7 Professional : Excel 2010)
VBAのコードの意味を教えてください。
投稿日時: 17/05/30 08:28:17
投稿者: glimmer

いつも大変お世話になっております。
今VBAの勉強中のためわからないことだらけですがよろしくお願いします。
そこで、ネットなどを検索していたら「adr = ActiveWindow.RangeSelection.Address」といったコードがありましたが、これは、どういう意味になるでしょうか?adrは変数だと思います。
みなさんよろしくお願いします。

回答
投稿日時: 17/05/30 09:52:20
投稿者: WinArrow
投稿者のウェブサイトに移動

コードの内容や使い方などは、HELPを活用しましょう
 
対象の文字列の個所にカーソルを置き、
{F1]を押すとHELPが表示されます。
 
なお、変数名はHELPの対象外です。
今回の場合は、
「ActiveWindow.RangeSelection.Address」の中のRangeあたりがよいかも

回答
投稿日時: 17/05/30 09:54:38
投稿者: WinArrow
投稿者のウェブサイトに移動

追加コメント
ネット検索画面では、HELPは使えませんので、
VBEの画面にコピペしてから、HELPを使ってみてください。

回答
投稿日時: 17/05/30 11:21:16
投稿者: ちゃこ

ActiveWindow.RangeSelection.Addressの検索代行
  ↓
https://msdn.microsoft.com/ja-jp/library/office/ff194102.aspx

回答
投稿日時: 17/05/30 16:48:51
投稿者: WinArrow
投稿者のウェブサイトに移動

>今VBAの勉強中のためわからないことだらけです
それならば、HELPは強い味方になってくれるはずです。
 
ちゃこ さんの紹介ページは、HELPと同じ内容です。
 
HELPと
お友達になりましょう。

回答
投稿日時: 17/05/30 21:57:35
投稿者: WinArrow
投稿者のウェブサイトに移動

glimmerさんへ、
 
本当に、文面通りの質問なんですか?
 
文面通りだとしたら、HELPを読んでください。
という回答しか出てきません。
 
このコードだけがぽつんとネットに掲載されていることはないと考えます。
何かの目的でネットなどを検索していたと思うので、
今回の質問に至った背景や経緯などを説明したほうがよいと思います。
 

回答
投稿日時: 17/06/16 20:52:10
投稿者: KCCN-FM100

こういうときはオブジェクトブラウザを使いましょう。
VBEの画面で「F2」で起動できます。
 
今回の場合、RangeSelectionを調べたら、
RangeSelectionはWindowプロパティの
メンバーであることがわかりました。
 
ここで、Activesheetじゃなくて
ActiveWindowを使うんだなということも
わかります。
 
さらに「F1」でヘルプを見ると

引用:
ワークシートで描画オブジェクトがアクティブになっていたり、
選択されていたりしても、Range オブジェクトは返されます。
とありますから、図形やグラフ、カメラなどが
アクティブになっていても、その直前に
選択されていたセルが返されることがわかります。
 
また、セルを返すことからワークシートが
選択されていないとエラーが返されるだろう
ということも想像できます。
 
「シート1」のセル「A1」が選択されているときに
図形やグラフ、カメラの画像あたりを選択して
直後にマクロを実行すると「$A$1」が返されるでしょう。
 
本件はだいぶ放置されていますし、質問者はもう
見ていないかもしれませんが、ほかに見ている人も
いるかもしれないと思い、書きました。

投稿日時: 17/07/01 12:23:26
投稿者: glimmer

ありがとうございます。
解りやすい説明で参考にさせて頂きます。