
No.2
- 回答日時:
こんなのではどうでしょうか?
その前に、質問についてですが・・・
>VBAでセル内に取り消し線が引いてある所の行を削除したいのですが
これは「取り消し線が引いてあるセルがある行は削除する」という意味でしょうか?
取り消し線はセルに対して設定されるので、行に対しては「ない」「ある」「一部のセルにはある」の3種類になります。
また、「削除する」は「その行を削除する」と「その行を空白行にする」がありますが、「削除する」でいいのでしょうか?
以下は「取り消し線のあるセルを含む行は削除する」という設定です。
まず「あるセルに取り消し線が設定されているかどうか」はわかるけど、直接「取り消し線を引いてあるセルを検出する」方法は(たぶん)無いと思います。
で、行単位に調べて、取り消し線が引いてあるセルを含む行を削除します。
取り消し線の有無は、セルの場合は、Font.StrikethroughがTrueかFalseかでわかります。
これを行に対して行うと、試してみた結果、一部のセルだけTrueの場合はNullを返しました。
また、調べる都度に削除する場合は、下の行から削除しないと、調べている行や最終行が途中で変わってしまいます。
Sub sample()
Dim r As Long
Dim ws As Worksheet
Set ws = Sheets("Sheet1") '対象シート
'UsedRangeの行単位に調べる(下から)
For r = ws.UsedRange.Row + ws.UsedRange.Rows.Count - 1 To ws.UsedRange.Row Step -1
'一部のセルに取り消し線がある場合はnullを返す(試してみた結果から)ので、trueとnullの場合は削除対象
If IsNull(ws.Rows(r).Font.Strikethrough) Or (ws.Rows(r).Font.Strikethrough = True) Then
ws.Rows(r).Delete shift:=xlUp
End If
Next
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルVBAについて質問です。 セルA1に"あ" セルB3に"い" セルC5に"う" と入力されて 2 2023/06/10 13:24
- Excel(エクセル) エクセル 関数について 4 2022/08/05 11:03
- Excel(エクセル) エクセルのセル値に対応してマクロを実行する方法を教えてください セルA1が「1」の時にマクロ名「マク 2 2022/06/19 18:45
- Visual Basic(VBA) Outlook VBAについて 1 2023/07/10 12:41
- Excel(エクセル) エクセルVBAでセルに表示されているとおりの数値を取得したい(時間の計算結果) 1 2022/03/30 17:52
- Excel(エクセル) エクセルにおいてセル内の文字を出来るだけ大きく表示する方法を教えてください。 4 2022/07/30 08:08
- Excel(エクセル) 電卓は正しいのに エクセルで計算させると間違った答えです。なぜ? 7 2022/08/11 07:04
- Visual Basic(VBA) エクセル関数のことで質問です。 別シートセルから値をもってくるように関数を設定しているときに、 別シ 3 2023/01/31 14:10
- Visual Basic(VBA) VBA ドロップダウンリストを残して値のみクリア 2 2022/10/27 05:42
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 2 2022/05/26 17:19
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel VBA 空白セルがあったら...
-
Excelマクロで空白セルの大小比...
-
Excel VBA コンボボックスで空...
-
Excel 入力規則のリストのカー...
-
visual basic 2005 express edi...
-
VBA 別ブックから条件に合うも...
-
VBA サンダーバードのメール自...
-
エクセル: セルの枠を超えて表示
-
エクセルでの計算式で求められ...
-
エクセルのセル内に全角数字を...
-
EXCELで特定のセルに表示...
-
エクセル:マクロ「Application...
-
エクセルのアポストロフィを一...
-
エクセルのパーセンテージで、...
-
IF関数で空欄("")の時、Null...
-
エクセルで表示形式の時刻の「0...
-
excelで、スクロールをすると限...
-
Excelに入力した個々の日付の数...
-
【エクセル】関数で「A1が0でな...
-
エクセルのセル内の余白の設定...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel VBA 空白セルがあったら...
-
クリップボードの内容を変数に...
-
Excel VBA コンボボックスで空...
-
VBA 別ブックから条件に合うも...
-
Excel 入力規則のリストのカー...
-
マウスを乗せたときにセルの色...
-
エクセルの取り消し線を検出す...
-
GridViewの行選択イベントを発...
-
マクロについて質問です 範囲内...
-
VBA サンダーバードのメール自...
-
エクセル チェックボックスの...
-
Excelマクロで空白セルの大小比...
-
複数セルに〇印をつけるマクロ
-
【VBA】セルが空白の場合に処理...
-
SPREADで1つのセルに複数のチ...
-
テーブルの境界線を消したい!!
-
【VB.NET】DataGridViewセルの...
-
vbaで色付けされたセルを除外し...
-
エクセルVBA 計算範囲を変更する。
-
セルデータの有無を判断して行...
おすすめ情報