2012-02-27 8 views
5

私は "Employee John Maybach"を含む文字列strInfoを持っています。Excelセル内に複数のカラーテキストを表示することはできますか?

「従業員」の黒いテキストを「John Maybach」の部分を赤色にするにはどうすればよいですか?

「従業員」の部分は常に一定ですが、従業員の名前の部分は、2部構成の名前(John Doe)または3部構成の名前(John Allen Doe)になるように変更されます。名(ジョン)。

単語「従業員」は常に黒にしたいが、セル内のテキストの残りの部分、名前部分は赤にしたい。これは可能ですか?

答えて

7

マクロレコーダーはあなたの友達です:ワークブックは異なるカラーパレットを持つことができるので、あなたが潜在的に `ColorIndex`を使用して、異なる結果を得ることができ

Dim fixedLength As Long 
fixedLength = Len("Employee") 
ActiveCell.FormulaR1C1 = "Employee Some Employee" 
With ActiveCell.Characters(Start:=fixedLength + 2, Length:=Len(ActiveCell) - fixedLength - 1).Font 
    .Color = vbRed 
End With 
+4

、そう.Color = vbRed''のようなものは、より安全かもしれません。 –

+1

私は、その列を見ているWorksheet_Changeイベントマクロにそのロジックを入れることをお勧めします。そのため、色の修正は名前を入力するときに自動的に適用されます。 –

+0

@TimWilliamsいいキャッチ。編集されました。 – assylias

関連する問題