advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 406 for kazu 条件付書式 (0.004 sec.)
kazu (7740), 条件付書式 (2650)
[[20160109171952]]
#score: 6689
@digest: 4defc622ce92fe695d7f415f0c4e6dea
@id: 69643
@mdate: 2024-05-02T13:55:20Z
@size: 5376
@type: text/plain
#keywords: 失注 (28058), 注" (23524), (bp (18595), fcs (8350), iall (6675), 算対 (6246), 赤字 (4109), entirerow (2725), 値= (2712), volatile (2536), 値) (2380), 加算 (2233), 字色 (2214), 象外 (2207), ト" (2116), adrs (1685), 2016 (1604), 条件 (1580), 付書 (1427), cell (1407), ド内 (1380), カッ (1364), 火) (1120), 件付 (1118), val (1080), ad (1055), 色で (1030), instr (1002), ジッ (989), 判定 (894), 応用 (881), ロジ (855)
『記号の前の赤文字を合計したい』(bp)
"赤い文字のセルだけ合計したい"を応用して、セル内に→が入っている赤い文字の前部分のみを集計したいのですが、作業列を使わずに集計する方法はあるでしょうか? ex.4000→0(赤字) 2040→0(青字) 3000(黒字) と色々な色が混在しています。 < 使用 Excel:Excel2010、使用 OS:Windows7 > ---- 交通整理だけです。 応用したいのは (e1k) 赤い文字のセルだけ合計したい http://www.excel.studio-kazu.jp/archives/e1k/e1k.html ですか? (β) 2016/01/09(土) 17:50 ---- その通りです。 (bp) 2016/01/12(火) 09:56 ---- ・色は文字色ですか背景色ですか? ・その色は実際につけられている色ですか、条件付書式でついている色ですか? ・1つのセルに 4000→0 と 文字列で入っているのですね? ・3000 は → がないのですが、加算対象ですか?それとも加算対象外ですか? ・5000○20 といったように →以外の文字が入っていた場合も加算対象ですか? それとも加算対象外でしか? ・以下は、今回のテーマの解決に役立ちますか? Sub Test() Dim cell値 As Variant cell値 = "123→10" MsgBox Val(cell値) cell値 = "456●20" MsgBox Val(cell値) cell値 = 789 MsgBox Val(cell値) End Sub (β) 2016/01/12(火) 11:41 ---- 色は文字色で、条件付書式で設定されています。 1つのセルに文字列ではいっていて、→以外の記号はありません。 また、→が入っていない赤字は対象外です。 空欄のセルも存在しています。 記述頂いたVBAで→の前が表示されることは分かりましたが、VBA初心者のため、どの様に応用して良いかわかりません。。。 (bp) 2016/01/12(火) 14:30 ---- 条件付き書式の「条件」が分かれば、 その条件を元に集計することが出来そうです。 条件を教えてもらえませんか? (稲葉) 2016/01/12(火) 15:02 ---- K列に"失注"と入っていれば文字色を赤字にするという条件です。 よろしくお願い致します。 (bp) 2016/01/12(火) 15:07 ---- コメント書いてアップしようとしましたら、いれちがいに条件の説明があったのですが メモしましたので、以下に。 なお、提示の条件なら、容易にコード化できると思いますね。 おそらく稲葉さんから回答があると思います。 以下、書いたメモを参考までに。 条件付書式の色ということなら、これは結構面倒です。 xl2010 なら DisplayFormatの参照が可能なんですが、これは UDFの中では使えません。 ですから、きわめて面倒な判定ロジックを記述するか、あるいは、色のチェックをあきらめて(?) 条件付書式に設定されている条件(これは、bp さんがご存じだと思いますので)を、コード内で判定し その条件から設定される文字色が、どの色なのかをチェックして、加算要否を判定するロジックにすることが必要になります。 (仮にお手伝いする場合、該当のセルへの条件付書式がどんなものなのか、具体的に、正確に、網羅的に教えていただく必要があります) 文字列中に → があるかどうかは、InStr(そのセルの値, "→") の戻り値が 0(なし)、0超(あり) で判断できます。 あとは、Val関数を使えばOKかと、 なお、kazu校長先生には申し訳ないのですが、学校のライブラリーで見つけられた、このコード、 ちょっと問題があります。 もし、モジュールの先頭に Option Explictを記述していれば(記述するのが正しい方向だと思います) このコードは、コンパイルエラーの嵐になります。プロシジャで使用する変数はすべて明示的に宣言しましょう。 (β) 2016/01/12(火) 15:19 ---- 合計すべき条件がK列にあるのは判りました。値が格納されている列はどこでしょう? また、ご提示された条件では数値は整数のようですが、小数点はありますか? とりあえず、整数値で、A列にある場合の例。 Sub test() Dim i As Long Dim iAll As Long For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row If Cells(i, "K").Value = "失注" And Cells(i, "A").Value Like "*→*" Then iAll = iAll + Val(Cells(i, "A").Value) End If Next i MsgBox iAll End Sub (???) 2016/01/12(火) 15:22 ---- とりあえず、私からも。 なお、コード内で条件を直接判定していますので、引数としてのカラーインデックスは不要になります。 Function FCS(adrs As Range) Application.Volatile Dim ad As Range For Each ad In adrs If ad.EntireRow.Range("K1").Value = "失注" Then If InStr(ad.Value, "→") > 0 Then FCS = FCS + Val(ad.Value) End If End If Next End Function シート側は =FCS(A1:A10) 等。 (β) 2016/01/12(火) 15:39 ---- うまく行きました!皆様ありがとうございました。 (bp) 2016/01/12(火) 16:25 ---- お世話になっております。 新たに条件が追加になりました。 K列が失注の場合という条件が、K列がカットの場合も同じ条件になり 赤字で矢印が含まれることになりました。 ご教示頂いたVBAを自分で下記の様に変更したのですが、FCSの結果は#VALUE!になります。 どこが間違っているのでしょうか? Function FCS(adrs As Range) Application.Volatile Dim ad As Range For Each ad In adrs If ad.EntireRow.Range("K1").Value = "失注" Or EntireRow.Range("K1").Value = "カット" Then If InStr(ad.Value, "→") > 0 Then FCS = FCS + Val(ad.Value) End If End If Next End Function (bp) 2016/01/18(月) 14:54 ---- If ad.EntireRow.Range("K1").Value = "失注" Or EntireRow.Range("K1").Value = "カット" Then これを If ad.EntireRow.Range("K1").Value = "失注" Or ad.EntireRow.Range("K1").Value = "カット" Then で試してみてください。 (β) 2016/01/18(月) 14:59 ---- 無事に集計出来ました。 ありがとうございました。 (bp) 2016/01/18(月) 17:01 ...
https://www.excel.studio-kazu.jp/wiki/kazuwiki/201601/20160109171952.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97065 documents and 608342 words.

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