[[20180527092843]] 『色付きセルにロット番号を振り分けて」行く方法』(ニシポン) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『色付きセルにロット番号を振り分けて」行く方法』(ニシポン)

早速ですが、要約にも書きましたが、シート内で条件付き書式で色を付けたセル
に他の欄に入力したロット番号を順番に振分ていく方法が分かりません。どなたか教えていただけないでしょうか?

黄色セル 300524-1 300525-2 300526-1
色なし
色なし
黄色セル 300526-2

ロット番号

300524-1
300525-2
300526-1
300526-2

< 使用 Excel:Excel2013、使用 OS:Windows10 >


 >・・シート内で条件付き書式で色を付けたセル
 >に他の欄に入力したロット番号を順番に振分ていく・・

 へぇー、これは新種(の質問)ですね!

 どんな条件付き書式で色を付けているんですか?
 黄色限定なんですか?
 3列が埋まると次の行に移るんですか? 

(半平太) 2018/05/27(日) 09:52


 >3列が埋まると次の行に移るんですか? 

 そんなんじゃなく、条件付き書式の色が付いているのは左端じゃなく、
 当該3セルに色が付いているんですか?

(半平太) 2018/05/27(日) 10:04


マクロでということですかね。
RangeオブジェクトのDisplayFormatプロパティを通して
条件付き書式による色が判別できますから、これを使うのでしょうか。
 
Q1)「順番に振分ていく」というのは、そのセルにひとつずつロット番号を入力するということですか?
Q2)その入力によって条件付き書式の結果に影響を及ぼすことがありますか?

(γ) 2018/05/27(日) 10:06


返答遅くなり申し訳ございません。

Q1)、Q2)色の条件付き書式は出荷数に応じて色を付けます。黄色にこだわってはいません。
例えば、出荷数3であれば、3マス色が付くという事です。他のセルに入力していた製造ロット
を色の付いたセルに順番に振り分けていくという事です。条件付き書式の結果には影響が及ぼしません。

出荷数 出荷累計  進捗
 0  0      0
 3  3     完了 300425-2 300525-2 300426-1 0  3      0
 0  3      0
 1  4     完了  300526-2

宜しくお願い申し上げます。
(ニシポン) 2018/05/27(日) 21:50


>条件付き書式は出荷数に応じて色を付けます。
じゃあ、出荷数を見て判断したらどうですか?
出荷数が > 0 というのを条件にしたらよいですね。

(γ) 2018/05/27(日) 22:14


 上記で触れたDisplayFormatの使用例を参考までに。

 Sub test()
     Dim myLot As Range
     Dim r As Range
     Dim k As Long

     Set myLot = Range("A1:A5")   'ロット番号のあるセル範囲  あくまで例です。
     k = 1
     For Each r In Selection 'Range("")     '対象範囲を走査
         If isColored(r) Then
             r.Value = myLot(k)
             k = k + 1
         End If
     Next
 End Sub

 Function isColored(r As Range) As Boolean '色がついていればTrueを返す
     isColored = r.DisplayFormat.Interior.Color <> RGB(255, 255, 255)
 End Function

 条件付き書式だけでなく、手でつけた色も対象となることに注意。

 DisplayFormatというプロパティは2010から入った機能です。
 このプロパティが導入されるまでは、条件付き書式の色を取得するのは結構大変でした。
 条件そのものを取り出して、逐一、結果を算定する方法が一般的でしたが、
 色々な条件指定のパターンがあるので、網羅するのは結構面倒な作業でした。
 加えて、Excel2007では、仕様変更とバグの為、この類の手法はかなり面倒な事になりました。
 Wordに一旦貼り付けるという方法を提案したりもし、議論がありました。(今は昔)

 2010からは上記機能が導入され、そのあたりの議論は不要になりました。
 注意点は、ユーザー定義関数ではDisplayFormatの機能が使えないことですね。
 ユーザー定義関数はあくまで「副作用」は許さない、というポリシーなのでしょう。

(γ) 2018/05/28(月) 07:08


こんばんは、早速確認させて頂きました。
思っていた通りの結果が出たので、大変喜んでおります。
すごいの一言です。
今後も困った時は助けて頂きたいです。ありがとうございました。

(ニシポン) 2018/05/28(月) 20:48


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.