- 締切済み
Excelのセル内の文字色について
A列には名前を入力して名前の後に 名前(ニックネーム) の様に()を入れています。 一度に、この()の文字色のみを変えるにはどうしたらよいでしょうか。
- みんなの回答 (6)
- 専門家の回答
みんなの回答
- bonaron
- ベストアンサー率64% (482/745)
(○○)版です。以外に簡単。 Sub testBLUE() Dim rng As Range Dim flg As Boolean Dim i As Integer For Each rng In Selection.Cells flg = False For i = 1 To rng.Characters.Count With rng.Characters(i, 1) If .Caption Like "[()]" Then flg = True End If If flg Then .Font.Color = vbBlue '青 End If If .Caption = ")" Then flg = False End If End With Next Next End Sub
- hige_082
- ベストアンサー率50% (379/747)
基本的には、#3さんのアレンジ '---------------------------------------------------------- Sub 括弧を赤に() Dim セル As Range Dim 文字 As Integer For Each セル In Selection.Cells For 文字 = 1 To Len(セル.Value) If セル.Characters(文字, 1).Caption = "(" Then セル.Characters(文字, Len(セル.Value)).Font.ColorIndex = 3 Exit For End If Next 文字 Next End Sub '---------------------------------------------------------- #3さん分かりやすいコード有難う御座います 私も勉強させていただきました
- bonaron
- ベストアンサー率64% (482/745)
> (○○)の()は色が変わりましたが○○が変わらないのです。 最初に「()の文字色のみを変える」と言ってるじゃないですか。 (○○)を変えるのは、3分では無理。 これから出かけるので 心ある方からのレスをお待ちください。 深夜、まだ解決していなければレスします。
- bonaron
- ベストアンサー率64% (482/745)
セルを選択しておいて実行してください。 Sub test() Dim rng As Range Dim i As Integer For Each rng In Selection.Cells For i = 1 To rng.Characters.Count With rng.Characters(i, 1) If .Caption Like "[()]" Then .Font.Color = vbRed '赤 End If End With Next Next End Sub 他の色にしたい場合は、こちらを参考に。 http://oshiete1.goo.ne.jp/qa4539881.html
- namemari
- ベストアンサー率66% (6/9)
A列とB列の間にもう1列挿入して、 その列に(ニックネーム)の列として色を変えるのではダメでしょうか。 (既にA列に入ってしまっている場合でも、「区切り位置」という方法を使えば名前とニックネームのセルを簡単に分けることができます。) わたしが知らないだけかもしれませんが、 経験上、同じセルの中ではできなかったと思います。
お礼
すみません。 説明が足りなかったです。 列の挿入はしないものと前提しての質問でした。
- gyouda1114
- ベストアンサー率37% (499/1320)
方法1 セルを選択 → F2キーを押す又はセル内でダブルクリックして()を選択 → Ctrlキー+1でセルの書式設定ダイアログで 色を設定又は書式設定ツールバーのフォントの色で設定 方法2 セルを選択 → 数式バーで()を選択 → Ctrlキー+1でセルの書式設定ダイアログで色を設定又は書式設定ツールバーのフォントの色で設定
お礼
ご回答有難うございます。 上記のやり方でもできるのですが 一度に変換を行いたいのですが他に方法はありますでしょうか?
お礼
今、実行してみました。 (○○)の()は色が変わりましたが○○が変わらないのです。 マクロ自体、初めての事なのでもう少しご教授くださいますでしょうか。