A1=12345
B1=67890
C1=CONCATENATE(A1,B1)

C1の値は
1234567890
となると思うのですが、
この際7を青色に、2と4を赤色にするといったことをするには
どうしたらよいでしょうか。

A 回答 (1件)

計算式の演算結果の値に複数のフォント色を設定することは、出来ないと思います。

    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QExcelで数式内の文字色を一部だけ変更したい

数式内の文字列の色を一部だけ変更したいのですが、どなたかご存知の方ご教授ください。

セルごと文字色を変更することは可能なのですが一部だけの変更ができません。

下記、例をあげます。
数式:="No"&A10&"を参照"
表示:No10を参照

上記のNo10の文字色を赤等に変更するにはどうしたらよろしいでしょうか。

Aベストアンサー

数式:="No"&A10&"を参照"
は一種の文字を結合する関数です。
私はいつも言っているのだが、関数(数式)は「値」だけを計算や加工したりするものです。元のセルの書式属性は引き継げません。
したがって「No}をセルに入れて、「赤色」に設定しても、あるセルの「10」の文字を赤くして、参照しても、文字の赤色属性は移りません。
ただあるセルの文字列の一部をの色を変えるのは、VBAで簡単にできます。
Sub test01()
For i = 1 To 5
s = 1
e = 2 + Len(Cells(i, "D"))
Cells(i, "G").Characters(s, e).Font.ColorIndex = 3
Next i
End Sub
D列にNoの数があるものとします。
G列に関数を入れているとします。
うまくいかなければ、G列をコピーし、値貼り付けして実行してみてください。

Qエクセルで文字列の結合したときのフォントの大きさを指定する。

続けて質問させてください。ここ何日間かずっと悩んでます。
エクセル2000を使っています。

文字列の結合は「&」か「CONCATENATE」を使えばいいというのはわかったのですが、A1に「AAA」という文字が11pで入っています。B1に「BBB」というのが9pではいっています。これをC1にそのまま結合(Aは11p、Bは9p)したいです。

過去ログは調べたつもりですが、同じものがあったらすみません。あまりエクセルは詳しくないですがよろしくお願いします。

Aベストアンサー

#1のimogasiさんが試されてたようなのでVBAでやってみました。

Private Sub Test()
With Cells(1, 3)
.Value = Cells(1, 1).Value & Cells(1, 2).Value
.Characters(1, Len(Cells(1, 1).Value)).Font.Size = Cells(1, 1).Font.Size
.Characters(Len(Cells(1, 1).Value) + 1, Len(Cells(1, 2).Value)).Font.Size = Cells(1, 2).Font.Size
End With
End Sub

が、tadasi1971さんはVBAでやりたいわけじゃないですよね?
私もやっぱりシート上ではできませんでした。ごめんなさい。(^-^;

QExcel VBA : 文字列の属性も含めて結合する方法

例えば、A1に「ABC」、A2に「DEF」と書いてあって、A3にこれらを結合して「ABCDEF」という文字列を作る場合は以下のマクロでできます。しかし、A1, A2の文字の色はコピーされません。A1が赤色であってもA3には全て黒色でコピーされてしまいます。
Sub con()
  Range("A3").Value = Range("A1").Text + Range("A2").Text
End Sub
これを文字の色やボールド、斜体、アンダーラインなども含めてコピーする方法を教えてください。よろしくお願いします。

Aベストアンサー

こんにちは。

これは、コピーされる側個々のセルは、全体単位で、ペーストされる側は、個別の書式でプロパティが写されます。


Sub CopyFont1()
 Dim a As Range, b As Range
 Dim c As Variant, k As Integer
 Set a = Range("A1")
 Set b = Range("A2")
 With Range("A3")
  .Value = a.Value & b.Value
  For Each c In Array(a, b)
   With .Characters(k + 1, Len(c.Value) + k + 1).Font
    .Bold = c.Font.Bold
    .Color = c.Font.Color
    .Italic = c.Font.Italic
    .Name = c.Font.Name
    .Size = c.Font.Size
    .Underline = c.Font.Underline
   End With
   k = k + Len(c.Value)
  Next
 End With
End Sub

こんにちは。

これは、コピーされる側個々のセルは、全体単位で、ペーストされる側は、個別の書式でプロパティが写されます。


Sub CopyFont1()
 Dim a As Range, b As Range
 Dim c As Variant, k As Integer
 Set a = Range("A1")
 Set b = Range("A2")
 With Range("A3")
  .Value = a.Value & b.Value
  For Each c In Array(a, b)
   With .Characters(k + 1, Len(c.Value) + k + 1).Font
    .Bold = c.Font.Bold
    .Color = c.Font.Color
    .Italic = c.Fon...続きを読む

Qエクセルで特定文字列に色をつけたいです。

表中の特定の文字列(例「日本」)に色をつけて表示するようにしたいのですが、ひとつひとつ手で変えていくしかないのでしょうか。
よろしくお願いします。

Aベストアンサー

vba処理です

Sub test()
Dim rng As Range, r As Range, i As Long, colInd As Integer
With ActiveSheet
Set rng = .Range("a1:z100") '範囲の設定
txt = "日本" '文字の設定
colInd = 3 '色の設定
For Each r In rng
If InStr(r, txt) > 0 Then _
r.Characters(InStr(r, txt), Len(txt)) _
.Font.ColorIndex = colInd
Next
End With
End Sub

Qエクセルで条件により文字色を変える関数教えて下さい

エクセル2003を使っています。
セルa1に下限値,a2に上限値を入力、c3にデータを入力します。
入力したデータがa1下限値,a2上限値の範囲内であればデータの文字色はそのままで、その範囲を超えるとデータの文字色が「赤」に変わる数式を教えて下さい。よろしくお願いします。

Aベストアンサー

C1セルを選択し、次の方法で如何でしょうか。
(1)書式→条件付き書式
(2)条件を「セルの値が」、「次の値の間以外」、「=A1」、「=B1」で設定
(3)書式→フォントタブの色リストで赤を選択→OK
(参考)下行も同様にしたい場合、C1セル下方向にコピーして下さい。

QエクセルのIF関数で、文字が入力されていたならば~

エクセルのIF関数で文字が入力されていたならば~、という論理式を組み立てたいと思っています。

=IF(A1="『どんな文字でも』","",+B1-C1)

A1セルに『どんな文字でも』入っていたならば、空白に。
文字が入っていなければB1セルからC1セルを引く、という状態です。

この『どんな文字でも』の部分に何を入れればいいのか教えてください。

またIF関数以外でも同様のことができれば構いません。

宜しくお願いします。

Aベストアンサー

=IF(ISTEXT(A1),"",B1-C1)

でどうでしょうか?

Qexcel関数式の一部を太字にする

concatenateを使い、excelで作った文章に今日の日付を入れることに成功しました。しかし、その今日の日付を太字と下線を使い強調したいと思います。エクセルの関数はいろいろみてみたのですが、関数の式として太字にしたり下線を引いたりすることは難しいようです。以前spellnumberを作った時はVBAの完成した式をコピペして、新しい関数を作るようにできたのですが、そのように関数として太字や下線を入れるようにできることはできないでしょうか?もしよいサイトがありましたら、よろしくお願いいたします。

Aベストアンサー

関数の計算結果として表示されている内容の一部に,書式(下線・太字・斜体・フォントの色種類大きさ等)を施す方法自体がありません。従って,そういうことができる関数もありません。

書式を施したいのでしたら,レイアウトに多少無理が生じても「前後の文字列のセル」「関数で日付等を表示させるセル」を分けて並べ,書式を施したい数式セルに書式を施しておくような見せ方になります。




#マクロが使えるのなら,結合した文字列をマクロで生成してセルに投入させ,さらにその言葉の一部分に書式を施すような仕込みをすれば,もちろん結果は出せます。
 今回ご質問は「関数でできるか」でしたので詳細は触れませんが,もしどうしてもというのでしたら詳しい状況を添え新たなマクロのご質問として,別途ご相談を投稿なさってみてはいかがでしょう。

QExcelでセル参照したとき、書式も一緒に持ってくるには?

例えば、A1セルに文字データと、それに付随した字体、文字サイズ、文字やセルの色、その他条件付き書式で設定した書式等があるとします。いま、別のセルで、=A1とすると、そのセルに文字データを取り込むことはできるが、付随した書式は取り込めません、よね?書式も一緒に取り込む数式の書き方ってあるでしょうか。教えてください。くれぐれも、コピーしろなどというお答えはなさらないで下さい。

Aベストアンサー

演算子や関数は、あくまでもセル内の文字や数値の処理をするものであり、属性(文字や枠の書式)に関する処理は行いません。
強いて言えば、カメラコピーというのがあります。
(メニューバーで右クリックし、ユーザ設定/コマンド/ツールの中にカメラがありますので、これをツールバーに追加します)
これは、オブジェクトの一種ですが、これはもとの書式が変わるとコピー先も同じように変わります。
ただ、計算や関数の引数などには使えませんが。

Qエクセルで自動的に決まった文字に色をつけるには?

日にちに対して隣のセルに曜日をtext関数を使って表示させています。
(2004/04/29→木という形で)
その際に、土、日の表示に対してだけ自動的に赤色表示させたいと思っています。
text関数にどのような関数をつけ加えればいいのでしょうか?
質問内容がわかりづらくて申し訳ありませんが、分る方いらっしゃいましたら回答よろしくお願い致します。

Aベストアンサー

別解を1つ。
=Text(A1,"aaa")によって「木」とか出ている列(B列とする)を、B1:B31とか範囲指定して、
書式-条件付き書式-「セルの値が」「等しい」「="土"」
(または「土」だけでも良い)-書式指定
「追加」ボタンをクリックして、
条件2に
「セルの値が」「等しい」「="日"」
(または「日」だけでも良い)-書式指定
(本質問の場合は条件1と同じ色にする)
「OK」をクリックで土、日に色が付きました。
条件1と条件2はOR条件になるわけです。

Qエクセルで数式の結果が反映されない(自動計算になっているのに)

すいません、教えてください。

エクセル(XP)で数式が自動計算されなくなって
しまいました。

  ※ツールのオプションはちゃんと自動計算に
   なっているのに全く反映されません。

今まで全く問題なく作業できていたので
原因が分からず困っています。

数式等のエラーだとは考えにくいです。
と言うのも数式のあるセルをダブルクリックして
選択し、そのままEnterキーを押すと計算結果が
反映されます。
ただ、今まで全て自動計算されていたのが
全く動かなくなってしまったんです。

同じようなトラブルを経験された方、又は
詳しい方、どうかよろしくお願いします。

Aベストアンサー

原因は分からずじまいになってしまいましたが
同じことがありました。

「Officeの救急隊」を試してみましょう。
ボタン一発で全ての設定が元に戻ります。
http://www.vector.co.jp/soft/win95/util/se247118.html
(ツールバーなども初期状態に戻ります)

私の場合はコレで直ってしまいました^^

参考URL:http://www.vector.co.jp/soft/win95/util/se247118.html


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報