回答編集履歴
1
コード追記
test
CHANGED
@@ -10,3 +10,27 @@
|
|
10
10
|
LastClm = Worksheets(i).Cells(1,Columns.Count).End(xlToLeft).Column
|
11
11
|
```
|
12
12
|
|
13
|
+
|
14
|
+
---
|
15
|
+
どうせ削除するときに最終列からループするので、
|
16
|
+
Findで探して配列に格納してなどと面倒なことをせずとも、
|
17
|
+
ループするときに1行目の値を確認すればすみます。
|
18
|
+
そうすれば下記のようなシンプルなコードになります。
|
19
|
+
|
20
|
+
```vba
|
21
|
+
Public Sub test()
|
22
|
+
Dim i As Long
|
23
|
+
For i = Worksheets("Sheet1").Next.Index To Worksheets.Count
|
24
|
+
With Worksheets(i)
|
25
|
+
Dim j As Long
|
26
|
+
For j = .Cells(1, Columns.Count).End(xlToLeft).Column To 1 Step -1
|
27
|
+
Select Case .Cells(1, j).Value
|
28
|
+
Case "りんご", "ばなな"
|
29
|
+
Case Else
|
30
|
+
.Columns(j).Delete
|
31
|
+
End Select
|
32
|
+
Next
|
33
|
+
End With
|
34
|
+
Next
|
35
|
+
End Sub
|
36
|
+
```
|