- ベストアンサー
Excelで計算結果の文字色を一部変更する方法
- Excelでセルの一部の文字色を変更する方法について教えてください。
- バージョンが2003と2007のExcelで、特定のセルの一部の文字色を変更する方法を知りたいです。
- 条件付き書式ではなく、マクロを使わずに一部の文字色を変更する方法を教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
2003までしか使ったことはありませんが、計算式の答えで出た文字列の一部だけ色を変えることは書式でもマクロでも出来ないはずです。 計算式の答えを、コピペで文字列化してよく、色の区切りを文字数とか何らかの方法で特定できるならマクロをつかえば可能です。
その他の回答 (1)
- tom04
- ベストアンサー率49% (2537/5117)
こんにちは! merlionXXさんが仰っているようにVBAでも数式で表示されているセル内で、部分的に文字の色を変えることは出来ないと思います。 値として貼り付けたセル内であれば可能です。 そこで全てVBAの方法の一例です。 A列をB列表示するのもVBAのコードに入れていますので、A列のみのデータでOKです。 A列のデータをB列に表示させ、B列の「か・き・く・け・こ」の文字色を赤にするようにしてみました。 画面の左下にあるSheet見出しの操作したいSheet見出し上で右クリック → コードの表示 → VBE画面が出ますので ↓のコードをコピー&ペーストしてマクロを実行してみてください。 Excel2003の場合は メニュー → ツール → マクロ → マクロ → 実行 Excel2007の場合は メニュー → 開発 → マクロ → 実行 だと思います。 Sub test() 'この行から Dim i, j As Long Dim str As String For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row Cells(i, 2) = Cells(i, 1) Next i For i = 1 To Cells(Rows.Count, 2).End(xlUp).Row For j = 1 To Len(Cells(i, 2)) str = Mid(Cells(i, 2), j, 1) If str Like "[か-こ]" Then Cells(i, 2).Characters(Start:=j, Length:=1).Font.ColorIndex = 3 End If Next j Next i End Sub 'この行まで 1行目からデータがあるコードにしていますが、1行目がタイトル行で2行目以降にデータがある場合は For i = 1 To Cells・・・部分の「1」を「2」に変更します。 (For j = 1 To Len(Cells(i, 2)) の方はそのままです) >Excel素人が操作することになるので、できるだけ簡単なやり方・・・ とありますが、セル内の特定文字の色だけを変えるというのは簡単にはいかないと思いますよ。 もし簡単な方法があればごめんなさいね。m(__)m
お礼
マクロの実例まで表示してくださってありがとうございます。 簡単には出来ないもんですね。 ありがとうございました!
お礼
なるほど、やっぱり簡単には出来ないのですね。 いつかは出来るようになると嬉しいんですがね。 ありがとうございました!