【エクセルマクロ】取り消し線を引く:使用例7選

エクセルマクロ:取り消し線を引くアイキャッチ ExcelVBA

エクセルマクロで、取消線を設定するVBAコードをご紹介します。

このページのマクロコードは、コピペで使えます。
ぜひ、お試しください。

取り消し線を引く(特定セル)

以下のマクロを実行すると、特定セルに取り消し線をつけます。


Sub 特定セルに取消線を設定()
     
    Range("A1").Font.Strikethrough = True
        
End Sub

 
セルA1に取り消し線を引きました。


 
 

取り消し線を引く(選択範囲)

以下のマクロを実行すると、選択範囲に取り消し線を追加します。


Sub 選択範囲に取消線を設定()
     
    Selection.Font.Strikethrough = True
        
End Sub

 
選択範囲に取り消し線を引きました。


 
 

取り消し線を引く(特定範囲)

以下のマクロを実行すると、特定範囲に取り消し線を引きます。


Sub 特定セルに取消線を設定()
     
    Range("A1:C10").Font.Strikethrough = True
        
End Sub

 
セルA1:C10の指定範囲に、取り消し線を引きました。


 
 

取り消し線を引く(行全体)

以下のマクロを実行すると、行全体に取り消し線を追加します。


Sub 行全体に取消線を設定()
      
    Rows(2).Font.Strikethrough = True
         
End Sub

 
2行目全体に取り消し線を引きました。


 
 

取り消し線を引く(列全体)

以下のマクロを実行すると、列全体に取り消し線を引きます。


Sub 列全体に取消線を設定()
      
    Columns(2).Font.Strikethrough = True
         
End Sub

 
2列目全体に取り消し線を引きました。


 
 

取り消し線を引く(ダブルクリックで設定)

以下のマクロを実行すると、ダブルクリックしたセルに取り消し線を引きます。


Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    
    Target.Font.Strikethrough = True
    Cancel = True
       
End Sub

 
ダブルクリックしたセルに、取り消し線を引きます。


 
 

取り消し線を引く(配列使用)

以下のマクロを実行すると、配列で指定した単語と一致するセルに取り消し線を入れます。


Sub 配列を使用して取り消し線を引く()

Dim Target() As Variant
Dim FoundCell As Range
Dim FirstCell As Range

  Target = Array("左ルー", "大倉", "五十嵐", "大盛り")
    
  For i = 0 To UBound(Target)
    
    Set FoundCell = Cells.Find(What:=Target(i), LookIn:=xlValues, LookAt:=xlPart)
    Set FirstCell = Nothing
        
    '1回目の検索で見つかった場合
    If Not FoundCell Is Nothing Then
        
        '見つかったセルに取消線を入れる
        Set FirstCell = FoundCell
        FoundCell.Font.Strikethrough = True
            
    End If

    Do
        'さらに検索
        If Not FirstCell Is Nothing Then
            
            Set FoundCell = Cells.FindNext(FoundCell)
               
            '最初に見つかったセルと一致していたらループ抜ける
            If FoundCell.Address = FirstCell.Address Then
                Exit Do
            Else
                '見つかったセルに取消線を入れる
                FoundCell.Font.Strikethrough = True
            End If
        Else
            '1つも見つからない場合は、ループ抜ける
            Exit Do
        End If
    Loop
    
  Next i
         
End Sub

 
配列 [Target] に入れた用語が見つかった場合に、取り消し線を挿入します。


 
 
この記事がお役に立ちますと幸いです。
 
・【エクセルマクロ】ダブルクリック処理を自動化する使用例まとめ
 

【エクセルマクロ】ダブルクリックで処理を実行:超便利12選
...

 

「Excel自動化[最強]時短仕事術」
自動化の基礎と時短に役立つテクニック解説書
毎日の定型業務を手際良く行え、大幅な業務効率化を実現!