No.3ベストアンサー
- 回答日時:
下にセルの移動
SelectionChangeが重なってしまいますので、片方を、ThisWorkbook にしてみました。
'<ThisWorkbook>
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
If Not IsEmpty(Target) Then
Target.Offset(1).Select
End If
End Sub
こちらのイベントは、メッセージボックスではない、ポップアップにしてみました。
'<シートモジュール>
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'C列 D列に設定
If Target.Column = 3 Or Target.Column = 4 Then Exit Sub
Application.EnableEvents = False
Set WshShell = CreateObject("WScript.Shell")
If Target.Column <> 3 Or Target.Column <> 4 Then
WshShell.Popup "そこはダメよ", 1, "禁止"
Cells(Target.Row, 3).Activate
End If
Application.EnableEvents = True
Set WshShell = Nothing
End Sub
以下は、エラーメッセージはでませんが、こんな方法もあります。
以下のようにすると、それ以外の列をアクティブにすることはできません。MsgBox などですと、Okを押さなくてはなりませんね。ポップアップでも、一定の時間(上記は約1秒)出ています。
登録して、再びOpen すると設定されています。
'<ThisWorkbook>
Private Sub Workbook_Open()
ThisWorkbook.Sheets(1).ScrollArea = "C:D"
End Sub
解除するときは、こんな風にします。
Sub Release()
ThisWorkbook.Sheets(1).ScrollArea = ""
End Sub
No.2
- 回答日時:
>アクティブになっているセルに何か入力されていたら下のセルに移動する
Do Until (IsEmpty(ActiveCell))
ActiveCell.Offset(1, 0).Activate
Loop
場合によっては、最下層のセルから
.End(xlUp)
した方がいいかもしれません。
>ある列以外ををアクティブにするとエラーが出る
そのシートのSelectionChangeイベントを使って
B列以外を選択すると、メッセージを表示し
強制的にB列に移動する
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column <> 2 Then '2 はB列
MsgBox "B列以外選択できません"
Cells(ActiveCell.Row, 2).Activate
End If
End Sub
No.1
- 回答日時:
こんにちは、じゃんぬねっと です。
> アクティブになっているセルに何か入力されていたら
> 下のセルに移動するというのはどうすればいいのでしょうか?
何の話ですか?
Excel ですか? Spread ですか? FlexGrid ですか?
Excel であれば、以下などを参考にしてください。
http://www.asahi-net.or.jp/~zn3y-ngi/YNxv206.htm …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelマクロ(VBA)CELL形式とA1形式の使い分け 6 2022/08/27 23:35
- Excel(エクセル) 表内で、Enterキーで横→行の最後入力したら次の行の先頭に移動するマクロを作りたい 3 2022/05/01 21:19
- Visual Basic(VBA) Excel vbaについて知恵もしくは、コード教えて下さいm(__)m ① 表にあるデータをコピー、 2 2022/09/01 23:57
- Visual Basic(VBA) Excel VBA マクロ ある列の最終行迄を参照し、別の列の空白セルに値を入力したいです 2 2023/03/05 02:44
- Excel(エクセル) 指定値をマクロで検索&シート移動 2 2022/04/27 23:29
- Excel(エクセル) 【エクセル】文中に別シートのセルの内容を自動入力したい 6 2022/11/17 11:30
- その他(プログラミング・Web制作) Pythonを勉強しています。 5 2023/08/25 09:51
- Excel(エクセル) エクセルについて教えてください。 3 2023/03/24 08:34
- Excel(エクセル) 条件付き書式の色付きセルのカウント方法について 2 2022/10/21 14:51
- Visual Basic(VBA) エクセルVBAで『A列』に新規で数値を入力し『B列』から右方向の空白セルにその値を貼り付ける方法 4 2022/11/05 08:37
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ExcelVBAを使って、値...
-
特定のセルが空白だったら、そ...
-
【Excel VBA】指定行以降をクリ...
-
i=cells(Rows.Count, 1)とi=cel...
-
【Excel】指定したセルの名前で...
-
Excelで指定した日付から過去の...
-
ExcelのVBAで数字と文字列をマ...
-
特定の文字を条件に行挿入とそ...
-
VBAでセルをクリックする回...
-
Excel vbaで特定の文字以外が入...
-
Excelのプルダウンで2列分の情...
-
エクセルVBAでコピーして順...
-
Excel VBA、 別ブックの最終行...
-
【VBA】指定したセルと同じ値で...
-
【VBA】シート上の複数のチェッ...
-
VBからEXCELのセルの値を取得す...
-
RC表示に変数を入れる
-
クリックされたセルの位置を取...
-
数字でピラミッドを出力させる...
-
Excel VBA について(列幅)
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ExcelVBAを使って、値...
-
特定のセルが空白だったら、そ...
-
i=cells(Rows.Count, 1)とi=cel...
-
【Excel VBA】指定行以降をクリ...
-
Excelで指定した日付から過去の...
-
【Excel】指定したセルの名前で...
-
Excel vbaで特定の文字以外が入...
-
特定の文字を条件に行挿入とそ...
-
TODAY()で設定したセルの日付...
-
screenupdatingが機能しなくて...
-
Excelのプルダウンで2列分の情...
-
EXCELで変数をペーストしたい
-
連続する複数のセル値がすべて0...
-
Excel VBA、 別ブックの最終行...
-
VBAを使用した時間管理
-
エクセルVBAでコピーして順...
-
セル色なしの行一括削除
-
【EXCEL VBA】Range("A:A").Fi...
-
VBA コピーして次の値まで貼り...
-
VBA初心者です。結合セルを保持...
おすすめ情報