作業ブックの「ThisWorkbook」に
下記のコードを設定しております。
このコードは「昇降機【青紙】(表面)」の指定セル「R20」に不特定の文字が表示されないと、警告文が表示され「昇降機質疑」シートに移動できないように設定したコードです。
このコードを
指定セル「R20」に不特定の文字では無く
不特定の半角英数字(8文字)が表示されないとシート移動が出来ないように変更出来る方法を教えてください。
現状のコード
Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
If ActiveSheet.Name <> "昇降機質疑" Then Exit Sub
Dim ws As Worksheet: Set ws = Worksheets("昇降機【青紙】(表面)")
Dim c As Range
If Not c Is Nothing Or IsEmpty(ws.Range("R20")) Or IsNumeric(ws.Range("R20")) Then
MsgBox "未入力セルがあります、入力しないとシートを移動できません", vbCritical
Application.EnableEvents = False
Sh.Select
Application.EnableEvents = True
End If
End Sub
以上となります。
宜しくお願い致します
No.1ベストアンサー
- 回答日時:
Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
If ActiveSheet.Name <> "昇降機質疑" Then Exit Sub
Dim ws As Worksheet: Set ws = Worksheets("昇降機【青紙】(表面)")
Dim c As Range
Dim re As Object
Set re = CreateObject("VBScript.RegExp")
' 正規表現の設定(半角英数字8文字に一致)
re.Pattern = "^[a-zA-Z0-9]{8}$"
re.IgnoreCase = True
' R20の値を確認
If Not re.Test(ws.Range("R20").Value) Then
MsgBox "セルR20には8文字の半角英数字を入力してください。", vbCritical
Application.EnableEvents = False
Sh.Select
Application.EnableEvents = True
End If
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2024/05/14 14:38
- Visual Basic(VBA) VBAコードについて教えてください。 2 2024/06/18 13:51
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 3 2024/03/22 08:43
- Visual Basic(VBA) Excelのマクロについて教えてください。 1 2024/06/18 09:20
- Visual Basic(VBA) ExcelのVBAのことで質問です。 以下のコードを入れ、ボタンを押せば作動させると写真のように画面 3 2023/12/14 16:10
- Visual Basic(VBA) VBAコードについて教えてください。 3 2024/07/02 12:34
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2024/03/26 18:09
- Visual Basic(VBA) 【Excel VBA】自動メール送信の機能追加 5 2022/09/29 12:53
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2024/07/05 10:32
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2024/03/18 17:57
このQ&Aを見た人はこんなQ&Aも見ています
-


VBA 2次元配列の出力
Visual Basic(VBA)
-


Visualbasicの現状について教えてください
Visual Basic(VBA)
-


VBAでセルの書式を変えずに文字列を置換する方法をご教示ください
Visual Basic(VBA)
-
-
4

【ExcelVBA】5万行以上のデータ比較の効率的な処理方法について
Visual Basic(VBA)
-
5

エクセルvbaの対象セルに色をつける 例えば a日付 b種類 c値段 dその他 にんじん 50 ぴー
Visual Basic(VBA)
-
6

VB.net 文字列から日付型へ変更したい
Visual Basic(VBA)
-
7

以下のプログラムの実行結果はどうなると思いますか? その理由も教えてください。
Visual Basic(VBA)
-
8

エクセル タブの下のメニューを選択 実行するコード
Visual Basic(VBA)
-
9

エクセルVBAのブックを開く方法 例えば [20241001] [20241002] [202410
Visual Basic(VBA)
-
10

Excelのマクロについて教えてください。
Visual Basic(VBA)
-
11

WindowsのOutlook を VBA から操作する
Visual Basic(VBA)
-
12

Excelのマクロについて教えてください。
Visual Basic(VBA)
-
13

Excelのマクロについて教えてください。
Visual Basic(VBA)
-
14

VBAのエラー表示の対処法について
Visual Basic(VBA)
-
15

Excel マクロについて詳しい方、ご教示ください。 『行数が毎回変わる元データの、A列に「1」と入
Visual Basic(VBA)
-
16

excelVBAについて。
Excel(エクセル)
-
17

ExcelのVBAコードについて教えてください。
Visual Basic(VBA)
-
18

不要項目の行削除方法について
Visual Basic(VBA)
-
19

VBA 同じフォルダ内のすべてのファイルに同じセルをペーストしたい
Visual Basic(VBA)
-
20

Excel VBAについて。こんな動作をさせるためにはどう書けばよいでしょうか。
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAでCOPYを繰り返すと、処理が...
-
【マクロ】並び替えの範囲が、...
-
【マクロ】オートフィルター を...
-
Vba Array関数について教えてく...
-
Vba 型が一致しません(エラー1...
-
【ExcelVBA】値を変更しながら...
-
vbsでのwebフォームへの入力制限?
-
エクセルのマクロについて教え...
-
【ExcelVBA】5万行以上のデー...
-
VBAでセルの書式を変えずに文字...
-
【マクロ】開いているブックの...
-
Vba セルの4辺について罫線が有...
-
vb.net(vs2022)のtextboxのデザ...
-
Excel VBA 選択範囲の罫線色の...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
エクセルの改行について
-
VBAで特定の文字が入った行をコ...
-
WindowsのOutlook を VBA から...
-
Excel 範囲指定スクショについ...
-
【マクロ】シートの変数へ入れ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Vba セルの4辺について罫線が有...
-
vbsでのwebフォームへの入力制限?
-
【ExcelVBA】5万行以上のデー...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
【マクロ】開いているブックの...
-
【マクロ】並び替えの範囲が、...
-
エクセルの改行について
-
エクセルのマクロについて教え...
-
vb.net(vs2022)のtextboxのデザ...
-
VBAでCOPYを繰り返すと、処理が...
-
VBA ユーザーフォーム ボタンク...
-
エクセルのVBAコードと数式につ...
-
エクセルのVBAコードについて教...
-
[VB.net] ボタン(Flat)のEnable...
-
【マクロ】変数を使った、文字...
-
改行文字「vbCrLf」とは
-
質問58753 このコードでうまく...
-
【マクロ】シートの変数へ入れ...
-
ワードの図形にマクロを登録で...
-
算術演算子「¥」の意味について
おすすめ情報










