質問編集履歴

1

「a~zのアルファベット」は1例として記載しました。「特定の文字列」という表現の方がわかりやすいですね。わかりにくくすみませんでした。

2020/12/04 14:28

投稿

koyamashinji
koyamashinji

スコア45

test CHANGED
File without changes
test CHANGED
@@ -1,6 +1,6 @@
1
- 下記のコードは、cells(i, "B")の値がアルファベットa~zまの場合でないものを、行ごと削除するマクロです。
1
+ 下記のコードは、cells(i, "B")の値が「特定文字列」でないものを、行ごと削除するマクロです。
2
2
 
3
- 条件文`And Not`を以下のように26行分書くほかに、**もっと簡略な記述方法**があれば教えていただきたく。
3
+ 条件文`And Not`を以下のように条件数のだけ書くほかに、**もっと簡略な記述方法**があれば教えていただきたく。
4
4
 
5
5
  是非よろしくお願いします。
6
6
 
@@ -14,19 +14,19 @@
14
14
 
15
15
  cellValue = Cells(i, "B").Value
16
16
 
17
- If Not cellValue = "a" And Not cellValue = "b" _
17
+ If Not cellValue = "文字列1" And Not cellValue = "文字列2" _
18
18
 
19
- And Not cellValue = "c" _
19
+ And Not cellValue = "文字列3" _
20
20
 
21
- And Not cellValue = "d" _
21
+ And Not cellValue = "文字列4" _
22
22
 
23
- And Not cellValue = "e" _
23
+ And Not cellValue = "文字列5" _
24
24
 
25
- And Not cellValue = "f" _
25
+ And Not cellValue = "文字列6" _
26
26
 
27
- And Not cellValue = "g" _
27
+ And Not cellValue = "文字列7" _
28
28
 
29
- And Not cellValue = "h" _
29
+ And Not cellValue = "文字列8" _
30
30
 
31
31
                   ・
32
32
 
@@ -38,7 +38,7 @@
38
38
 
39
39
                   ・
40
40
 
41
- And Not cellValue= "z" Then
41
+ And Not cellValue= "文字列20" Then
42
42
 
43
43
  Cells(i, "B").EntireRow.Delete
44
44