Excelの文字列に取り消し線を入れたいときはないでしょうか。
けど、そんな中で悩むことは、
・Excelの文字列に取り消し線を入れるショートカットが知りたいたいがわからない
・別シートにある文字列まとめて取り消し線を入れたいが方法がよくわからない
ですよね。
今回はそんなお悩みを解決する
・Excelの文字列に一括で取り消し線を入れるVBA
についてまとめます!
もくじ
Excelの文字列に取り消し線を入れるショートカット
Excelの文字列に取り消し線を入れるショートカットは以下になります。
<span class="keybtn">Ctrl</span>+<span class="keybtn">5</span>
文字を選択し、ショートカットキーを押下します。
はい、できましたね。
もう一度ショートカットキーを押下すると取り消し線が解除されます。
Excelの文字列に取り消し線を入れる基本操作
Excelの文字列に取り消し線を入れる基本操作について説明をします。
文字列を選択し、右クリック>「セルの書式設定」を選択します。
「配置」タブ「文字の装飾」の「取り消し線」にチェックを入れ「OK」ボタンをクリックします。
はい、取り消し線が追加されましたね。
取り消し線を解除する場合は、文字列を選択した上、「配置」タブ「文字の装飾」の「取り消し線」のチェックを外します。
Excelの文字列に二重取り消し線を入れる基本操作
Excelの文字列に二重取り消し線を入れる基本操作について説明をします。
二重の取り消し線は図形オブジェクト内のテキストのみ有効の書式となりますので、まずは図形を挿入し、二重取り消し線を入れたい文字列を追加します。
次に文字列を選択し、右クリック>「フォント」を選択し「フォント」タブの二重取り消し線にチェックを入れOKをクリックします。
はい、できましたね。
Excelの別シートを含む文字列に取り消し線を追加/解除するVBA
Excelの別シートを含む文字列に取り消し線を追加/解除するVBAについて説明をします。
これまではシートにある文字列を対象に取り消し線を入れたり解除してきましたが、次は別シートの文字列も含んで一括で取り消し線を入れたり解除していきたいと思います。
VBAコード
Excelの別シートを含む文字列に取り消し線を追加/解除するVBAは以下の通りとなります。
Sub 取り消し線を入れる()
Sheets("Sheet1").Range("A1:A3").Font.Strikethrough = True
Sheets("別シート").Range("A1:A10").Font.Strikethrough = True
End Sub
Sub 取り消し線を解除する()
Sheets("Sheet1").Range("A1:A3").Font.Strikethrough = False
Sheets("別シート").Range("A1:A10").Font.Strikethrough = False
End Sub
VBAを設定する
VBAを設定していきましょう。
今回はSheet1シートのA1-A3と「別シート」というシート名のA1-A10セルを対象として追加しますので設定内容は以下の通りとなります。
Sheets("Sheet1").Range("A1:A3")
Sheets("別シート").Range("A1:A10")
VBAを実装する
VBAの実装手順は下記「VBAの実装手順」をご参照ください。
VBAを実行する
VBAを実行して、取り消し線を追加してみましょう。
「取り消し線を入れる」のマクロを選択して実行します。
別シート分含めて取り消し線が追加されましたね。
続いて取り消し線を解除します。
「取り消し線を解除」のマクロを選択して実行します。
はい、取り消し線が解除されましたね!
VBAの説明
VBAの内容について説明をします。
取り消し線を入れる書式設定はオブジェクトのFont.StrikethroughプロパティをTrueにすることが設定ができます。
取り消し線を解除する場合はFalseを指定します。
<オブジェクト>.Font.Strikethrough = True
Excelの文字列に二重取り消し線を追加/解除するVBA
Excelの文字列に二重取り消し線を追加/解除するVBAについて説明をします。
VBAコード
Excelの文字列に二重取り消し線を追加/解除するVBAは以下の通りとなります。
Sub 二重取り消し線を入れる()
With Selection.ShapeRange
.TextFrame2.TextRange.Font.Strike = msoDoubleStrike
End With
End Sub
Sub 二重取り消し線を解除する()
With Selection.ShapeRange
.TextFrame2.TextRange.Font.Strike = msoNoStrike
End With
End Sub
VBAを設定する
VBAを設定する箇所はありません。
なお、二重線ではなく一本線の取り消し線を引きたい場合はStrikeプロパティの値を「msoSingleStrike」に変更してください。
.Strike =msoSingleStrike
VBAを実装する
VBAの実装手順は下記「VBAの実装手順」をご参照ください。
VBAを実行する
VBAを実行して、二重取り消し線を追加してみましょう。
今回は取り消し線を入れたい文字列がある図形を選択します。
「二重取り消し線を入れる」のマクロを選択して実行します。
図形の二重取り消し線を追加されましたね。
続いて二重取り消し線を解除します。
「二重取り消し線を解除」のマクロを選択して実行します。
はい、二重取り消し線が解除されましたね。
VBAの説明
VBAの内容について説明をします。
二重取り消し線を入れる書式設定はオブジェクトの.TextRange.Font.Strikeプロパティに「msoDoubleStrike」を指定することで設定ができます。
二重取り消し線を解除する場合は「msoNoStrike」を指定します。
<オブジェクト>.TextRange.Font.Strike = msoDoubleStrike
また、二重線ではなく1本線にしたい場合は、「msoSingleStrike」に変更してください。
<オブジェクト>.TextRange.Font.Strike = msoNoStrike
VBAの実装手順
実装手順は以下の通りです。
Excel側にVBAを実装していきます。
①Excelを新規に開き、「開発」タブをクリックし、「VisualBasic」をクリックします。
もしくはショートカットキー「Alt」+「F11」でもOKです。
②標準モジュールを追加します。
左ペインのVBAProjectを右クリックし、「挿入」、「標準モジュール」を選択します。
③右ペインのウインドウに上記のVBAを入力します。
こちらで完了です。
VBAを実行する
では早速VBAの実行をしてみましょう。
①「開発」タブの「VBA」をクリックし実行したいマクロを選択し、「実行」をクリックします。
②処理がされたことが確認できれば完了です。
さいごに
いかがでしょうか。
今回は、
・Excelの文字列に一括で取り消し線を入れるVBA
についてまとめました。
また、他にも便利な方法がありますので、よろしければご参照頂ければと思います。
コメントを残す