• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBのグリッドにてマウスクリックでセル位置を正確に取得したい)

VBのグリッドでマウスクリックでセル位置を正確に取得したい

ryu_takanakaの回答

  • ベストアンサー
回答No.1

見出し部分のクリック取得は、MouseRow、MouseColで 取得できると思います。 範囲選択では、 Row:選択開始行 Col:選択開始列 RowSel:選択終了行 ColSel:選択終了列 で取得できると思います。

greenhope
質問者

お礼

早速のアドバイスありがとうございました。まさにそのとおりに記述したら、目的を達することができました。 グリッド名.MouseRow という正確な変数があるのに、なんでグリッド名.Row という、不完全な 変数があるのかと首をかしげてしまいました。 ColSel も、なかなかその綴りからわかりにくいものです。おかげですっきしました。VBを勉強中のため、分からなくなるたびに質問しますので今後ともよろしくお願いします。  

関連するQ&A

  • クリックされたセルの位置を取得するには?

    テーブルのセルがクリックされた時、そのセルの位置(行番号、列番号)を取得したいと思っています。 セルオブジェクトのプロパティ(?)がよく分からないのですが、どうすれば取得できますか? ご回答よろしくお願いします。

  • データグリッドのセルの値を取得するには

    データグリッドにある数行、数列のデータをレポートデザイナを使用せずに印刷したいのですが、グリッドのセルの値を取得するにはどうすればよいのかわかりません。よろしくお願いします

  • FlexGridで複数選択したセル、行、列を取得

    VisualBasic5を使用しています。 フレキシブルグリッドコントロールについてですが、 複数の行や列やセルを選択したときにそれらの値を取得するプロパティとかって何かありませんか? 特に行について教えて欲しいのですが。

  • クリックされた罫表セルの行番号、列番号を取得するには

    クリックされた罫表セルの行番号、列番号を取得する事は出来るのでしょうか。 例えば 下記Tableの"き"という文字が入ったセルをクリックすると 列番号:2 行番号:3 という番号を取得したいのです。 <table> <thead><tr><th>1</th><th>2</th><th>3</th><th>4</th></tr></thead> <tbody> <tr td>あ</td><td>い</td><td>う</td><td>え</td></tr> <tr><td>お</td><td>か</td><td>き</td><td>く</td></tr> <tr><td>け</td><td>こ</td><td>さ</td><td>し</td></tr> <tr><td>す</td><td>せ</td><td>そ</td><td>な</td></tr> </tbody> </table> onclickでidのついた所をクリックした時のアクションは取得できましたが、Csvなどからデータを取得したtableのセルをクリックした時の 列数、行数を取得する事は可能でしょうか。 宜しくお願いします。

  • 指定したセルの位置の取得について教えてください

    例えば、5と書いてあるセルの行番号と列番号の位置を自動で表示する関数を下の水色に使いたいのですがどうしたらいいのか教えてください。

  • 【vb6】フレックスグリッドの余白部分

    お世話になります。 MSFlexGridの余白部分について質問があります。 (セルが全く無いデフォルトで灰色の地帯です) 現在、グリッドに数行のデータを設定して、 クリックしたらカレント行全体が選択されるようにしています。 問題は行の無い余白部分のことなのですが、もし○行目をカレントとして選択している時、 次に余白部分をクリックしたら今の行選択を解除したいと考えているのですが、上手くいきません。 ”行選択を解除する”というのは.Rows=0で出来そうなのですが、 グリッドにはリストビュー等のように.Hittestのプロパティがない為余白部分が押されたことを知るには どうしたら良いか検討が付きません。 どなたか知っている方がいらっしゃれば教えてください。 よろしくお願いします。

  • 文字列検索しセルの位置が知りたい

    指定範囲内で文字列を検索し、見つかったセルの行番号、列番号を知りたいのです。 マクロでなく関数で出来るでしょうか?

  • エクセルVBAでセル位置の置き換え

    売上帳をエクセルVBAを使って作っています。 シート自体は、    B    C     D    E 1 日付 顧客NO. 顧客名 品名 2 3 のようになっており、 B列、C列、D列の最終行に入っている値を、その一行下から、E列最終行までのB~D列全部に貼りつけたいのです。 コードは下記のように書いてあります。 Dim 行番号 Dim セル日 Dim セル客 Dim 品名行 Dim 日付行 Dim セル日2 Dim セル日3 Sub 日付と顧客名を貼付() 行番号 = Cells(Rows.Count, "B").End(xlUp).Row 'B列最終行の行番号を取得し「行番号」に代入 セル日 = "B" & 行番号 セル客 = "D" & 行番号 Range("セル日:セル客").Copy '日付と顧客番号と顧客名をコピー 品名行 = Cells(Rows.Count, "E").End(xlUp).Row 'E列最終行の行番号を取得し「品名行」に代入 日付行 = Cells(Rows.Count, "B").End(xlUp).Row + 1 'B列最終行の1行下の行番号を取得し「日付行」に代入 セル日2 = "B" & 日付行 セル日3 = "B" & 品名行 Range("セル日2:セル日3").PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False 'B列最終行の1行下のB列からD列に値の貼り付け End Sub これを実行すると、 『Range("セル日:セル客").Copy』の部分でエラーがでます。 正しくはどのように書けばよいのでしょうか?

  • vlookupの結果があるセルの書式を取得したい

    vlookupの結果があるセルの書式を取得したい =VLOOKUP(検索値,範囲,列番号,検索の型)で値を取ってくることは 出来ますが、その値の入っているセルの書式を取得したい。 Sheet1の セルA1に、検索したい値が入っていて、 セルB2にVLOOKUP関数が入り。 範囲はSheet2のA1:D1000となっていて、 列番号に4と入っていて10行目に 検索値と一致する値が入っていた場合に、D10の値は VLOOKUP関数で持ってこれますが、D10のセル書式を セルB2に反映させたいのですが、どのようにすれば良いでしょうか? VBAでプログラムしないとダメでしょうか?

  • Excelの関数で、範囲内で条件と一致したセルの位置を取得するには

    Excelの関数で、範囲内で条件と一致したセルの位置を取得するには どうすればよろしいでしょうか? (例)  5行×5列にA~Yまでの25文字がランダムで配置されている場合、  「K」と「R」の位置(相対位置等)を取得したい。  ※範囲内に配置されている値は重複しません。 実際は20行程度×20列程度の範囲です。 ほとほと困り果てています。 よろしくお願いします。