- ベストアンサー
Excelマクロ
Excelマクロで1行が選ばれたかを判定したいのですが セルであらわすとCells(0,1)と(0があるのかわかりませんが)なるところがセレクトされているかを知りたいです 誰か教えていただけるとうれしいです
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>Excelマクロで1行が選ばれたかを判定したいのですが この質問の意味を、行全体、いわゆる一番左の行番号をクリックしているかどうかの判定と捉えてみました。 下はサンプルですが、単一セルを選択して実行したり、行番号をクリックして実行してみてください。 答えを返します。複数行全部の選択も行全ての選択とみなしています。 内容は単純なので説明不要でしょう。 行全体を選択したら、そのアドレスが、『行番号1:行番号2』になることを利用しています。 列の場合も同様でしょうが、チョッと面倒ですかね。 ご参考に。 Sub RowChooseCheck() Dim rw As Long '選択した最初の行 Dim rwCot As Long '選択行数 Dim strRow As String '行全部を選択した場合のアドレス rw = Selection.Row rwCot = Selection.Rows.Count strRow = rw & ":" & (rw + rwCot - 1) If Selection.Address(0, 0) = strRow Then MsgBox "行全部を選択しています。( " & strRow & " )" Else MsgBox "行全部を選択していません" End If End Sub
その他の回答 (1)
- bin-chan
- ベストアンサー率33% (1403/4213)
> Excelマクロで1行が選ばれたかを判定したいのですが 「選択されている場所」なのか、「選択されている行の数」か、迷いますが。 「選択されている場所」 Selection.rowで選択されているセルの「行」番号が取得できます。 Selection.columnで選択されているセルの「列」番号が取得できます。 「選択されている行の数」 Selection.rows.countで選択されているセルの「行数」が取得できます。 Selection.columns.countで選択されているセルの「列数」が取得できます。