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

回答編集履歴

1

コードを追加しました

2020/12/08 23:14

投稿

Taka1108
Taka1108

スコア32

answer CHANGED
@@ -1,7 +1,13 @@
1
+ 【Test1】
1
2
  Booleanを使い空白が有ったらTrueにして、最後までTrueだったら行、列を削除する。
2
3
  行と列で2回のループになります。
3
4
 
5
+ 【Test2】
6
+ データーが無い イコール 最終行、列の番号=1になるので1になればその行、列を削除
7
+ こちらの方が簡単です。
8
+
4
9
  ```vba
10
+ Sub Test1()
5
11
  Dim i As Long, j As Long
6
12
  Dim Blank As Boolean
7
13
  For i = Cells(Rows.Count, 1).End(xlUp).Row To 2 Step -1
@@ -35,4 +41,25 @@
35
41
  Columns(j).Delete
36
42
  End If
37
43
  Next j
44
+ End Sub
45
+
46
+ Sub Test2()
47
+ Dim i As Long
48
+
49
+ '行の削除
50
+ For i = Cells(Rows.Count, 1).End(xlUp).Row To 2 Step -1
51
+ If Cells(i, Columns.Count).End(xlToLeft).Column = 1 Then
52
+ Rows(i).Delete
53
+ End If
54
+ Next i
55
+
56
+ '列の削除
57
+ For i = Cells(1, Columns.Count).End(xlToLeft).Column To 2 Step -1
58
+ If Cells(Rows.Count, i).End(xlUp).Row = 1 Then
59
+ Columns(i).Delete
60
+ End If
61
+ Next i
62
+
63
+ End Sub
64
+
38
65
  ```