【Excel VBA】取り消し線の設定(Strikethroughプロパティ)

りゅう

こんにちは!りゅう(@ryupong_b)です。
今回は、セル内の文字列に取り消し線を設定する方法を解説します。

はじめに

今回は、セル内の文字列に取り消し線を設定する方法をご紹介します。
ここで取り扱う取り消し線は以下のイメージです。

取り消し線のイメージ
この記事を読むメリット
  • 取り消し線を設定する方法が分かります。
  • 一部文字のみ取り消し線を引く方法など、実践でも応用できるコードを掲載しています。
  • サンプルコードを用いて、コピペで使える実践的なコードをご紹介します。

基本情報

Strikethroughプロパティ

取り消し線を引くには、FontオブジェクトのStrikethroughプロパティを使用します。
取り消し線を引く場合「True」を、取り消し線を解除する場合「False」を設定します。

構文

‘ A1セルの文字列に取り消し線を設定
Range(“A1”).Font.Strikethrough = True

‘ A2セルの2文字目を起点とする3文字に取り消し線を設定
Range(“A2”).Characters(2, 3).Font.Strikethrough = True

サンプルコード

セルを指定して取り消し線を設定

サンプルコード
Public Sub setStrikethrough()

    ' A1セルに取り消し線を設定
    Range("A1").Font.Strikethrough = True

    ' A2セルからF5セルに取り消し線を設定
    Range("A1:F5").Font.Strikethrough = True
End Sub

セル内の一部文字のみ取り消し線を引く

サンプルコード
Public Sub setStrikethroughForPart()

    ' A1セルの5文字目を起点とする4文字に取り消し線を設定
    Range("A1").Characters(5, 4).Font.Strikethrough = True
End Sub

実行前

実行前

実行後

実行後

シートすべての取り消し線を解除

サンプルコード
Public Sub resetAllCellStrikethrough()

    ' 1シート目の全てのセルの取り消し線を解除する
    ThisWorkbook.Worksheets(1).Cells.Font.Strikethrough = False
End Sub

最後に

今回は、取り消し線を設定する方法をご紹介させて頂きました。
この記事が、皆さんのお力になれば幸いです!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

大手外資系コンサルティングファーム勤務。ExcelVBA歴は8年。金融関係のプロジェクトにて約100万レコードを処理するマクロの開発実績あり。ExcelVBAの基礎・応用情報を発信中。

コメント

コメントする

CAPTCHA