プロが教える店舗&オフィスのセキュリティ対策術

1.シート全部のセルが選択されてしまった(Cells.Selectの状態)ことを判別する方法はどうすればいいでしょう?

まさか、If Selection.Cells.Count = 256*65536 Then ではないでしょうねえ?

2.複数のセルが選択されたことの判別方法は、

If Selection.Cells.Count > 1 Then

で正しいですか、または他にいい方法がありますか?

A 回答 (6件)

1.if Selection.address="$1:$65536" then


でもいいみたいです。
2.同じですが
Selection.Count
でいい(Cellsは不要)と思います。
    • good
    • 0
この回答へのお礼

ありがとうございます。

1.はずいぶんシンプルですね。おどろきました。
2.もCellsが不要とは思いませんでした。

勉強になりました。

お礼日時:2004/11/13 01:32

Debug.Printについては、↓が参考になりそうです。



「【マクロのコツ】」
http://www.eastwest-net.co.jp/vba/kotu.htm

リンクの
----------
デバッグ
(5)イミディエイト ウィンドウ
----------
をご覧ください。
    • good
    • 0
この回答へのお礼

ありがとうございます。
ちょいと難しいです。

お礼日時:2004/11/13 01:24

If Selection.Rows.Count = Sheets(1).Rows.Count And Selection.Columns.Count = Sheets(1).Columns.Count Then


Debug.Print "ok"
End If
はいかが?
    • good
    • 0
この回答へのお礼

なるほど、列と行で判別させたわけですね。
ありがとうございます。

ところでDebug.Printとは何でしょうか?

お礼日時:2004/11/12 15:04

#2のマクロはそのままでも動くのですが、


一応↓の記述をSub sentakuhanni2()
の下に加えておいてください。

Dim r As Long
    • good
    • 0

2.については↓でいいかと思います



Sub sentakuhanni2()
r = Selection.Cells.Count
If r = 1 Then
MsgBox "一つ"
Else
MsgBox "複数"
End If
End Sub
    • good
    • 0
この回答へのお礼

ありがとうございます。

お礼日時:2004/11/12 15:03

1については↓でいいかと思います。



Sub sentakuhanni()
Dim r As Long
r = Selection.Cells.Count
If r = 16777216 Then
MsgBox "全部"
Else
MsgBox "全部ではない"
End If
End Sub

2.についてはお待ちを・・・。
    • good
    • 0
この回答へのお礼

早速ありがとうございました。

16777216=256*65536ですね。(笑)

お礼日時:2004/11/12 15:02

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!