見出し画像

文章の末尾にある済みを取り消し線を追加するよ

この説明は、ChatGPTで作成しています。

このプロシージャは、選択したセル内の文章の末尾に「済み」と記載されている場合、その「済み」に取り消し線を追加するためのものです。

手順の流れ:

  1. 画面更新を停止します。これにより、コードが実行される間の画面のちらつきを防ぎます。

  2. エラーが発生しても次の行に進むように設定します。

  3. 選択範囲のセルを一つずつ処理します。

  4. 各セルの文字列を一文字ずつ確認し、末尾に「済み」があるかどうかをチェックします。

  5. 「済み」が見つかった場合、その部分のフォント色を緑色(ColorIndex = 4)に変更し、取り消し線を引きます。

  6. 最後に、画面更新を再開します。

コードの詳細:

Sub 文章の末尾にある済みを取り消し線を追加するよ()
    Application.ScreenUpdating = False ' 画面更新を停止
    On Error Resume Next ' エラーが発生しても続行
    Dim myRng As Range
    Dim myStr As String
    Dim i As Long
    For Each myRng In Selection
            'myRng = myRng.Value & "_済み" ' コメントアウトされた行
            For i = 1 To Len(myRng)
                myStr = Mid(myRng.Value, i, 3)
                '_済みがあったら書式変更
                If myStr Like "_済み" Then
                    With myRng.Characters(Start:=i, Length:=3).Font
                        .ColorIndex = 4 ' 緑色に変更
                        .Strikethrough = True ' 取り消し線を追加
                    End With
                End If
            Next i
    Next myRng
    Application.ScreenUpdating = True ' 画面更新を再開
End Sub

このプロシージャは、Excel VBAを使って簡単なテキスト処理と書式変更を行う方法を学ぶ良い例です。

キーワード

#excel #できること #vba #文章処理 #取り消し線 #書式変更 #エクセル #マクロ #プログラミング初心者 #テキスト編集 #自動化 #選択範囲 #セル操作 #緑色 #エラーハンドリング #コメントアウト #繰り返し処理 #フォント設定 #画面更新 #テキスト操作


Adding Strikethrough to "済み" at the End of Text

This explanation is created using ChatGPT.

This procedure is designed to add a strikethrough to the text "済み" at the end of any selected cells in Excel.

Flow of the Steps:

  1. Stops screen updating. This prevents screen flicker while the code is running.

  2. Sets the code to continue even if an error occurs.

  3. Processes each cell in the selected range.

  4. Checks each character in the cell to see if it ends with "済み".

  5. If "済み" is found, it changes the font color to green (ColorIndex = 4) and adds a strikethrough.

  6. Finally, resumes screen updating.

Code Details:

Sub 文章の末尾にある済みを取り消し線を追加するよ()
    Application.ScreenUpdating = False ' Stops screen updating
    On Error Resume Next ' Continues even if an error occurs
    Dim myRng As Range
    Dim myStr As String
    Dim i As Long
    For Each myRng In Selection
            'myRng = myRng.Value & "_済み" ' Commented-out line
            For i = 1 To Len(myRng)
                myStr = Mid(myRng.Value, i, 3)
                '_済み found and format it
                If myStr Like "_済み" Then
                    With myRng.Characters(Start:=i, Length:=3).Font
                        .ColorIndex = 4 ' Change to green
                        .Strikethrough = True ' Add strikethrough
                    End With
                End If
            Next i
    Next myRng
    Application.ScreenUpdating = True ' Resumes screen updating
End Sub

This procedure is a good example of how to use Excel VBA for simple text processing and formatting.

Keywords

#excel #whatyoucando #vba #textprocessing #strikethrough #formatting #excel #macro #beginnersprogramming #textediting #automation #selectionrange #celloperation #greencolor #errorhandling #commentout #loopprocessing #fontsettings #screenupdating #textmanipulation

この記事が気に入ったらサポートをしてみませんか?