teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

2020/05/19 11:38

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -4,7 +4,13 @@
4
4
  他に方法はないでしょうか。
5
5
  ちなみに、 (xlToLeft)しなければ動きは早いです。
6
6
 
7
+ F g1|Fg2 |Fg3 |Fg4
8
+ aaa|bbb|空白 |ccc
9
+ aaa|aaa|空白 |空白
10
+ ccc|空白 |ccc|bbb
11
+ aaa|ccc|bbb|ddd
7
12
 
13
+
8
14
  ```
9
15
  Sub sample()
10
16
  Dim i As Long, j As Long

1

2020/05/19 11:38

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -6,18 +6,15 @@
6
6
 
7
7
 
8
8
  ```
9
+ Sub sample()
9
- Dim i, j As Long
10
+ Dim i As Long, j As Long
10
-
11
- For i = 2 To Cells(Rows.Count, 1).End(xlUp)
11
+ For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
12
- For j = 1 To 4
12
+ For j = 4 To 1 Step -1
13
-
14
- If Cells(i, j) = WorksheetFunction.CountIf(Range(Cells(i, 1), Cells(i, 4)), Cells(i, j)) > 1 Then
13
+ If WorksheetFunction.CountIf(Range(Cells(i, 1), Cells(i, 4)), Cells(i, j)) > 1 Or Cells(i, j) = "" Then
15
14
  Cells(i, j).Delete (xlToLeft)
16
-
17
15
  End If
18
16
  Next j
19
17
  Next i
20
-
21
18
  End Sub
22
19
 
23
20
  ```