
ごめんなさい、先日同じ質問したのですが、締め切ったときの方法では出来なかったのでもう一度質問します。
(急いでたので確認せずに締め切ってしまいました。ごめんなさい。)
=====
例えばセルA1に「あいうえおかきくけこ」と入力されています。
セルB1には「=A1」という数式が入力されていて、結果「あいうえおかきくけこ」が返っています。
ここでセルB1の「かきくけこ」の部分だけの文字色を(マクロ以外の方法で)変更することは可能でしょうか。
この「あいうえおかきくけこ」の部分は「さしすせそたちつてと」になるときもあるし、「ABCDEFGHIJ」になるときもあります。
Excel素人が操作することになるので、できるだけ簡単なやり方を教えてもらえればありがたいです。
どうぞよろしくお願いします。
=====
なお
条件付き書式で「か」から「こ」の間の書式を変更する方法では出来ませんでした。
またExcelのバージョンは操作する人によって違う(2003と2007が混在しております)ので、取りあえず2003でやる方法を教えていただければ幸いです。
No.1ベストアンサー
- 回答日時:
2003までしか使ったことはありませんが、計算式の答えで出た文字列の一部だけ色を変えることは書式でもマクロでも出来ないはずです。
計算式の答えを、コピペで文字列化してよく、色の区切りを文字数とか何らかの方法で特定できるならマクロをつかえば可能です。
No.2
- 回答日時:
こんにちは!
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
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
条件に応じて特定の行を非表示...
-
excel ある部分だけをコピペし...
-
Excel2007で、太字にした行のみ...
-
「マクロ」の足し算の式を教え...
-
エクセルで、行ごとの並び替え...
-
シートを任意の日付で自動で作...
-
複数シートの色付きセルがある...
-
日報をエクセルで作成したいの...
-
前の(左隣の)シートを連続参...
-
エクセルでファイルを開いたと...
-
エクセルで複数設定したハイパーリンク先...
-
エクセル 計算式も入っていない...
-
【マクロ】毎回、ファイル名が...
-
エクセルの複数シートの保護を...
-
シートの保護のあとセルの列、...
-
VBAでシートコピー後、シート名...
-
至急お願いします。エクセルシ...
-
別シート参照のセルをシート毎...
-
エクセルで、「1つ前のシート...
-
エクセルVBAでパスの¥マークに...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
条件に応じて特定の行を非表示...
-
Excel2007で、太字にした行のみ...
-
excel ある部分だけをコピペし...
-
エクセル VBA 小数点を含む数字...
-
エクセルで、行ごとの並び替え...
-
エクセルで連番をマクロで
-
Excelでセル内の数式は残し値だ...
-
Excel にて非表示行を探すワー...
-
値貼り付けをしても書式も貼り...
-
Excel2007 セルを右方向に削除...
-
整数行を残し小数点の行を削除...
-
エクセルで特定の数字となる組...
-
Excel(VBA)データ入力に応じて...
-
wordのvbaでハイパーリンク設定...
-
「マクロ」の足し算の式を教え...
-
エクセルで同じ行中にある先頭...
-
Excelで連続印刷をするマクロ
-
エクセルである印をつけた特定...
-
100行のセルの高さを一括で調整...
-
エクセルで全ての数字間にカン...
おすすめ情報