NPOI Change Cell Part Text Font Color (セル内の一部文字列の色変換)


    Private Sub CellPartTextColorChange(tempWB As HSSFWorkbook, TrgCell As HSSFCell)
        Dim cellFont As HSSFFont = tempWB.CreateFont
        cellFont.Color = IndexedColors.BLUE.Index
 
        '置き換えをしたい文字列
        Dim trgText As String = TrgCell.StringCellValue 'Exmple:[XX] aaa [XX] bbbb [XX] cccc
 
        '[]{}内の文字列を検索
        Dim pttrn As String = "\[(.*?)\]+|\{(.*?)\}+"
 
        For Each SearchChar As Match In Regex.Matches(trgText, pttrn)
            '文字列のマッチ値青色に変換する
            TrgCell.RichStringCellValue.ApplyFont(SearchChar.Index, (SearchChar.Index + SearchChar.Value.Length), cellFont)
        Next SearchChar
 
    End Sub

-----------------------------------------------------------------
結果:
[XX] aaa [XX] bbbb [XX] cccc