[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『最終行が「0」の列を最終列まで削除したい』(師走)
1列目から10列目まで1行目が空白の場合に列を削除する下記マクロは理解できたのですが、最終列にSUM関数があり、「0」の列を最終列まで削除したいのですが変数の使い方を教えてください。
Sub 空白列削除()
Dim l As Long
For l = 10 To 1 Step -1
If Cells(1, l) = "" Then
Columns(l).Delete
End If
Next i
End Sub
< 使用 Excel:Office365、使用 OS:Windows10 >
↓ここが1行目
Cells(1, l)
↑ここがl列目
ならば、各行の【最終列】が0かどうかを判定して、行全体を削除すればよいでしょう。
■2
なお、新しい質問をするのも結構ですが↓もちゃんと始末するべきでしょう。
[[20221202113059]] 『日付の重複削除できない』(師走)
[[20221202144938]] 『オートフィルターのカウントが違うのは何故ですか』(師走)
(もこな2) 2022/12/03(土) 12:46:23
Dim i As Long
Dim j As Long
Dim LastRow As Long
Dim LastClm As Long
'最終列
LastClm = Range("C2").End(xlToRight).Column
'最終行
LastRow = Cells(Rows.Count, 3).End(xlUp).Row
'行をループ
For i = LastRow To 1 Step -1
'列をループ
For j = 2 To LastClm
'値が0だったら
If Cells(i, j) = "0" Then
'最終列まで0だったら
If j = LastClm Then
'列削除
Column(j).Delete
End If
Else
'値に0以外があったら、次の行へ
Exit For
End If
Next j
Next i
End Sub
(師走) 2022/12/03(土) 23:50:12
■4
「0」と「"0"」では意味が違いますがそこは理解できてますか?
(SUM関数で求めた結果なんですよね?)
(もこな2) 2022/12/04(日) 08:32:42
>Column(j).Delete ↓ Columns(j).Delete
(半平太) 2022/12/04(日) 09:20:44
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.