advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 4506 for 条件付き書式 (0.007 sec.)
[[20181122165013]]
#score: 3703
@digest: 05d6bbae4ff2b9afeff5b83ccf6cdf04
@id: 77899
@mdate: 2018-11-29T08:08:46Z
@size: 7129
@type: text/plain
#keywords: ・>= (12117), 〇") (8681), あ*" (8062), 字小 (5743), ちほ (5138), 隠居 (5125), ・特 (4170), 此方 (3988), ル2 (3165), 2018 (3044), 居じ (2990), ほ) (2920), じー (2884), 用先 (2751), 小文 (2628), 大文 (2533), ル1 (2447), 候補 (2093), 木) (1873), 区別 (1867), 件付 (1864), 字色 (1660), 条件 (1580), (隠 (1391), 文字 (1350), ピペ (1303), ーさ (1266), 義関 (1255), 準モ (1019), color (891), 書式 (884), iferror (857)
『セル内の文字色で決まった値を返す。』(ちほ)
セル内に文字色で決まった値を返すことが関数で出来ますか? 例 A B 1 25(赤) × 2 32(黒) 〇 3 27(黒) 〇 4 45(赤) × ※()内は文字色です。 どなたか教えて下さい。 < 使用 Excel:Excel2016、使用 OS:Windows10 > ---- 補足:例では数値だけですが、実際は数値・文字などあります。 (ちほ) 2018/11/22(木) 17:04 ---- Bが✕の時にAが赤 Bが○の時にAが黒 という状態にしたいのであれば 条件付き書式で出来る (無) 2018/11/22(木) 17:14 ---- それはわかりますが、やりたい事と違います。 (ちほ) 2018/11/22(木) 17:20 ---- VBAですが。。。Sheet1 対象 Option Explicit Sub main() Dim i As Long, r As Range Worksheets("Sheet1").Copy With ActiveSheet .Range("B:B").Clear For Each r In .Range("A1").CurrentRegion i = i + 1 .Cells(i, 2) = .Cells(i, 1).Font.Color Next End With End Sub (隠居じーさん) 2018/11/22(木) 17:48 ---- 赤色を条件付き書式ではなく手塗りしているのであれば、以下のようにユーザー定義関数を使うとか。 【標準モジュール】 Function aaa(R As Range) As String aaa = IIf(R.Font.Color = RGB(255, 0, 0), "○", "×") End Function 【シート上の式】 B1: =aaa(A1) (???) 2018/11/22(木) 17:51 ---- おっと、赤なら×でしたね。○×を逆にしてください。 (???) 2018/11/22(木) 17:58 ---- 隠居じーさん様 ???様 有難うございます。 条件付きで書式を赤に変更しています。 隠居じーさん様 シートのコードにコピペすればいいのですか? (ちほ) 2018/11/22(木) 18:05 ---- いえ 標準モジュールです。 ???さん のコードのほうがよりお望みのものに近いかと思います。 私のは色コードをそのまま返しているだけなので、 ○×の対応は出来ていません。 (隠居じーさん) 2018/11/22(木) 18:15 ---- 隠居じーさん様 有難うございます。 ???様の方でやってみますが、条件付き書式で赤文字でも大丈夫なのでしょうか? コードにコピペして、 【標準モジュール】 Function aaa(R As Range) As String aaa = IIf(R.Font.Color = RGB(255, 0, 0), "○", "×") End Function セルにコピペ 【シート上の式】 B1: =aaa(A1) すれば良いのでしょうか? (ちほ) 2018/11/22(木) 18:28 ---- すみません ^^; 条件付き書式のカラーは FormatConditions とか 使わないとダメっぽいです。 一寸調べてみますね。。。 良くご存知の方の回答をお待ちください m(_ _)m (隠居じーさん) 2018/11/22(木) 19:00 ---- >条件付きで書式を赤に変更しています どういう条件を設定しているのでしょうか (マナ) 2018/11/22(木) 20:51 ---- 標準モジュールへコピペ ("Sheet1")が対象でお試しを 外していましたらお許しを ^^; Option Explicit Private Sub mo_01() Dim i As Long, rr As Range Worksheets("Sheet1").Copy With ActiveSheet For i = 1 To .Cells(.Rows.Count, 1).End(xlUp).Row If .Cells(i, 1).DisplayFormat.Font.ColorIndex = 3 Then .Cells(i, 2) = "×" Else .Cells(i, 2) = "○" End If Next End With End Sub (隠居じーさん) 2018/11/22(木) 23:44 ---- A列を条件付き書式で色を付けているのなら、その条件を使って◯×を判断すれば数式で出来ます。 マクロの回答はついてるので、マクロでも良いと言う事なら良いですけど、元々関数希望との事なので、 数式の回答を希望されるなら、条件付き書式に使用している条件を提示して下さい。 (sy) 2018/11/23(金) 07:21 ---- (sy)様 条件付き書式は以下の条件が入っています。 ・=セル1>=セル2+40 ・>=80 ・特定の文字から始まる『あ』 などが入っています。 (ちほ) 2018/11/26(月) 12:27 ---- 隠居じーさん様 VBAをコピペしても変わりません。 何か設定ありますか? (ちほ) 2018/11/26(月) 12:29 ---- とりあえず 貼り付けたコードの中に カーソルを移動して、F5を押してみてください。 (隠居じーさん) 2018/11/26(月) 12:38 ---- 隠居じーさん様 全てコピペ出来ていませんでした。 F5押すと違うファイルが立ち上がり 〇×表示されます。 (ちほ) 2018/11/26(月) 13:33 ---- それでよければ 下記コードに書き換えて(前の全て消して今回の分をコピペ) エクセルのリボンの開発タブ マクロ で マクロの一覧表が出ますので sample_01 を選択して実行してください。シート名 Sheet1 が対象です。 (注意※ 元には戻せませんのでご注意ください。バックアップ取ると良いですね) このままで、ユーザー定義関数にすると何故かエラーになる使用だそうです。^^; 関数は詳しい方の回答をお待ちください。 でわ m(_ _)m Option Explicit Sub sample_01() Dim i As Long, rr As Range With Worksheets("Sheet1") For i = 1 To .Cells(.Rows.Count, 1).End(xlUp).Row If .Cells(i, 1).DisplayFormat.Font.ColorIndex = 3 Then .Cells(i, 2) = "×" Else .Cells(i, 2) = "○" End If Next End With End Sub (隠居じーさん) 2018/11/26(月) 13:58 ---- (sy)様 教えて下さい。 (ちほ) 2018/11/29(木) 10:28 ---- 抽象的な式で書かれても直しようがないので、具体的な式を書くべきです。 が、条件付き書式で着色しているならば、適用先にB列も加えるだけじゃないでしょうか? 例えば「A1:A100」を「A1:B100」にして、式のほうは「A1」等で比較している部分を「$A1」のように列固定に変えるだけです。(とっくに気づいて解決しているものと思ってましたよ…) (???) 2018/11/29(木) 10:44 ---- そうか、同じ色を付けても、また色判定することになるから、適用先を変えても駄目なのですね? そうすると、式で同じ条件を書くのが目的に適ってそうですね。 たとえば「=IF(AND(A1>=B1+40,LEFT(C1,1)="あ"),"○","×")」こんな感じで書けそうですが、具体的な条件を書けないようならば、これを元に考えてみてください。 (???) 2018/11/29(木) 11:04 ---- 今体調不良で回答が満足に出来ないのですいません。 いくつか???な部分があるんですが、 >・>=80 >・特定の文字から始まる『あ』 >=80 としてるので、80以上の数値は当然ですが、「あ」でも「い」でも文字は全て80以上に該当するので、 これだと下の「あ」から始まるに関係なく、文字は全て赤字になってませんか? セル1、セル2、はA列以外のセルの事ですか? 何かお互い相反する条件があるので、セルごとに条件が違うと言う事でしょうか? 今のご提示いただいてる内容では的確な回答は出来ないですけど、 返事をいただいても直ぐには回答出来ないので、いくつか憶測で回答例を提示しておきます。 まずはご提示頂いてる条件がそれぞれバラバラの場合の単独の式 =IF(セル1>=セル2+40,"×","〇") =IF(A1>=80,"×","〇") 指定の文字から始まるは、1文字だけなら =IF(RIGHT(A1,1)="あ","×","〇") 指定の文字が1文字で、検索候補が他にも複数ある場合などは =IF(OR(RIGHT(A1,1)={"あ","い","う"}),"×","〇") 文字数が決まってなく、大文字小文字の区別をしなくて良いなら =IF(COUNTIF(A1,"あ*"),"×","〇") 此方も検索候補が他にも複数なら =IF(OR(COUNTIF(A1,{"あ*","いう*","えおか*"})),"×","〇") または =IF(SUM(COUNTIF(A1,{"あ*","いう*","えおか*"})),"×","〇") 大文字小文字を区別するなら =IF(IFERROR(FIND("あ",A1)=1,0),"×","〇") 此方の複数候補の場合 =IF(OR(INDEX(IFERROR(FIND({"あ","いう","えおか"},A1)=1,0),0)),"×","〇") 3つの条件のどれかに該当すれば良いと言う場合は、 大文字小文字の区別が無ければ、 =IF(OR(セル1>=セル2+40,A1>=80,COUNTIF(A1,{"あ*","いう*","えおか*"})),"×","〇") 大文字小文字を区別する場合は、 =IF(OR(セル1>=セル2+40,A1>=80,INDEX(IFERROR(FIND({"あ","いう","えおか"},A1)=1,0),0)),"×","〇") (sy) 2018/11/29(木) 17:08 ...
https://www.excel.studio-kazu.jp/wiki/kazuwiki/201811/20181122165013.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97065 documents and 608342 words.

訪問者:カウンタValid HTML 4.01 Transitional