Page 636 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼組み込み関数の中で文字色を変更するには? なな 03/1/24(金) 9:53 ┣Re:組み込み関数の中で文字色を変更するには? ぴかる 03/1/24(金) 10:52 ┗Re:組み込み関数の中で文字色を変更するに... ポンタ 03/1/24(金) 12:58 ┗Re:組み込み関数の中で文字色を変更するに... なな 03/1/29(水) 14:35 ─────────────────────────────────────── ■題名 : 組み込み関数の中で文字色を変更するには? ■名前 : なな ■日付 : 03/1/24(金) 9:53 -------------------------------------------------------------------------
こんにちわ* だれか、おしえてください。 A | B | C --------------------------- 1000 20 500 Aは、はじめからはいっていて、Bは後から入力されます。 Cに「AとBの誤差が20%以上だったら、Bの文字色を赤に変更する」というIF文をマクロの中でいれたいのですが・・・。 IF文は、Cn =IF(ABS(TRUNC((An/Bn-1),2)) - 0.2) > 0 , Bnの文字色を変える,"") なんですが、「Bnの文字色を変える」ところがわかりません。 あと、このIF文をマクロ内で記述するには,どうしたらいいでしょうか。 おねがいします* |
ななさん、こんにちは。 >IF文は、Cn =IF(ABS(TRUNC((An/Bn-1),2)) - 0.2) > 0 , Bnの文字色を変える,"") >なんですが、「Bnの文字色を変える」ところがわかりません。 ちょっと難しい数式なんでよく分かりませんが、そいつを一般機能の条件付き書式に 展開された方が楽かも知れません。よろしければお試し下さい。 |
>Cに「AとBの誤差が20%以上だったら、Bの文字色を赤に変更する」という >IF文をマクロの中でいれたいのですが・・・。 ↑の方法はわかりませんが、 別の方法で同様の結果をえることが出来ます。 以下のコードを対象のシートモジュールに貼り付けて、 お試しください。 Private Sub Worksheet_Change(ByVal Target As Range) Dim MyTarget As Range, c As Range Application.EnableEvents = False Set MyTarget = Intersect(Range("B:B"), Target) If Not MyTarget Is Nothing Then For Each c In MyTarget If Val(c.Value) <> 0 Then If 1 - Abs(c.Value / c.Offset(0, -1).Value) > 0.2 Then c.Font.ColorIndex = 3 Else c.Font.ColorIndex = 1 End If End If Next End If Application.EnableEvents = True End Sub |
ぴかるさん ポンタさん ありがとうございます! 自分なりにがんばってみます!! |