CDの保有枚数を教えてください

質問です。
商品の在庫表(取引先からの発注数を入れる欄あり)で、同じ品番の商品は品番の下に赤線を入れる書式を設定しています。=IF($F3<>$F4,1,0)という書式です。

毎日大量の商品が入荷するため、1回1回下線を引くのが手間なのでこうしました。

K列~0列は取引先から発注をもらったら入力します。
それでP列の合計値が0の場合は表示しないソートをかけると、毎回赤線が崩れてしまいます。
この赤線をソートかけてもそれに対応できるようにしたいのですか可能でしょうか。
よろしくお願いします。

「条件付き書式で設定→ソートをかけてもその」の質問画像

質問者からの補足コメント

  • うーん・・・

    すみません、お礼に書いてしまいました。

    ありがとうございます。
    そうです。フォントの下線ではなく、品番の下E列からP列までの罫線が赤になります。
    =COUNTIF(F$1:F1,F1)>1
    の数式でいれたらとびとびでいろんなところに赤い線がでました><

      補足日時:2016/07/12 12:05
  • ありがとうございます。商品名は同じ品番であっても少し違う場合があるので、
    品番のF列に置き換えてやってみましたが、変なところに線が引かれてしまいました><

    No.2の回答に寄せられた補足コメントです。 補足日時:2016/07/12 13:33
  • お返事が遅くなり申し訳ございません。回答ありがとうございます。
    こちらはVBAというやつですか?
    まったくの初心者で貼り付けはしたものの、実行ができませんでした。
    こちらは貼り付けだけではだめっていうことでしょうか。こちらで何かすることがあるのでしょうか??

    No.8の回答に寄せられた補足コメントです。 補足日時:2016/07/15 16:33
  • うーん・・・

    何度もありがとうございます。理解力が乏しく申し訳ありません。

    標準モジュールに貼り付けは
    条件付き書式設定 =LastItemRow($F3)
    のところから貼り付けでしょうか。
    そのあと閉じて、条件付き書式で=LastItemRow($F3)のみ貼り付け、赤い罫線を
    やりましたが無反応でした。
    そのあと条件付き書式設定 =LastItemRow($F3)の下から標準モジュールに貼り付けもしてみましたができませんでした><

      補足日時:2016/07/19 16:23
  • すみません、もう一度補足です。
    しばらくたった後見てみたら赤線は入ってました!
    が、品番と品番の間に赤線が入ってます。

      補足日時:2016/07/19 16:42

A 回答 (11件中1~10件)

試行錯誤しながら、いろいろな条件付き書式を設定していると思いますが、その中で不要な設定が残ってしまってるだけでしょう。


一旦、すべての条件付き書式を削除して、再設定する事をお勧めします。もしくは、該当シートの条件付き書式をすべて表示して、不要なものを削除してみて下さい。もしかしたら、他の回答者さんのやり方でも上手くいくものがあるかもしれませんよ。
    • good
    • 1

ん~ん~ん~ん~。


条件付き書式で色々やっても、セルに貼り付く訳では無いから、無理なんですよ。何度も言ってますが・・・・。

条件付き書式のコードは、A1に張り付いたら、幾らソートしてもセルと一緒には動きません。

どうやっても、新しいA1の位置のまま。

これを考慮しないと上手く行かないんです。
VBAで外側からやらないと出来ません。

質問の要旨がドンドン変わってます。
「品番の下に」がいつの間にか「合計まで」とか・・・・。
一回リセットして、やりたい事の条件を全て提示して、再度質問スベシ。
    • good
    • 1

No.8です。


VBAは標準モジュールに貼り付けたものと理解しています。
後は、その関数を使って、条件付き書式に数式を設定するだけです。
数式の例も回答に書いたつもりなのですが、ご理解いただけなかったでしょうか?
    • good
    • 0

フィルタが掛かっていない状態(すべて表示されている)であれば、下記、式①で可能です。


式① =$F3<>$F4

0チェックを外した状態であれば、下記、式②で可能です。
式② =COUNTIFS($F$3:$F3,$F3,$P$3:$P3,"<>0")=COUNTIFS($F:$F,$F3,$P:$P,"<>0")

しかし、式②では、フィルタが掛かっていない状態だと、おかしな表示になってしまいます。
そこで、フィルタの有無を判断して、適切な式を適用します。
=IF(COUNTA($F:$F)=SUBTOTAL(3,$F:$F),式①,式②)

しかし、合計が10以下とかでフィルタを掛けてしまうと、やっぱりおかしな表示になってしまいます。
そこでお勧めなのが、ユーザ定義関数での実装です。
こんな感じです。

条件付き書式設定 =LastItemRow($F3)

Function LastItemRow(r As Range) As Boolean
Dim i As Long
If r.Value = "" Then Exit Function
For i = 1 To Rows.Count
If Not r.Offset(i).EntireRow.Hidden Then Exit For
Next i
If r.Value <> r.Offset(i).Value Then LastItemRow = True
End Function
この回答への補足あり
    • good
    • 0

[No.4お礼]へのコメント、



》 同じ品番の中に罫線ができました。
》 また、違う品番なのに罫線はひかれてません
ということは、No.2 の添付図とは真逆の、似てもつかない、場所が赤罫線になったと。つまり、赤罫線が引かれたのは 3、4、7行目の下側だっと。

》 範囲 E3:P10 に対する[条件付き書式]の設定条件
と私は書いているので、提示した式はセル E3 に於ける式になっているということだけど、貴方が「教えていただいたとおりにやった」とは信じられません、率直に申せば。
    • good
    • 0

No.1です。



>E列からP列までの罫線が赤になります。

前回はF列限定としていました。
※ 質問文で「ソートをかけると」とありますが、
P列が「0」以外でフィルタを掛ける!というコトでしょうか?

非表示行に対応できているかどうかわかりませんが
E~P列すべてを範囲指定し、条件付き書式の数式を
=COUNTIF($F$1:$F1,$F1)>1
のように絶対参照にしてみたらどうなりますか?m(_ _)m
    • good
    • 0
この回答へのお礼

そうです。0チェックを外してソートをかけます。
=COUNTIF($F$1:$F1,$F1)>1
にしたら品番と品番の間にも赤線入りますが、同じ品番内にも赤線が入りました。

お礼日時:2016/07/12 16:37

No.3続き


条件付き書式のレイヤもソートでは一緒に動きません。
A2に入れた条件付き書式は、どういうソートをかけてもA2の位置のままです。
    • good
    • 0

[No.2]への補足へのコメント、



》 品番のF列に置き換えてやってみましたが、変なところに…
商品名のG列のままでやってみた結果を報告してください。
「変なところ」なんて、抽象的な「変な」コメントはなしに願います。
「F列に置き換えてやって」みたときの「数式」および「変なところ」が何処なのかを教えてください。
    • good
    • 0
この回答へのお礼

ありがとうございます。教えてくださってるのに的確な答えでなく申し訳ございません。
教えていただいたとおりにやったところ、同じ品番の中に罫線ができました。
また、違う品番なのに罫線はひかれてません。

お礼日時:2016/07/12 16:01

ソートで一緒に動いてくれるレイヤは、表示形式、配置、フォント、パターン、値、式のレイヤです。



ソートでは罫線レイヤは動きません。
これがエクセルの欠点です。
    • good
    • 0
この回答へのお礼

ありがとうございます。
以前はできていたようなのです。
なので何かをしたらできるのではないかと思いました。

お礼日時:2016/07/12 15:58

範囲 E3:P10 に対する[条件付き書式]の設定条件


_____数式が___________________書式
条件1_=AND($G3=$G2=TRUE,$G4=$G3=FALSE)__赤下線
条件1_=AND($G3=$G2=FALSE,$G4=$G3=TRUE)__赤上線
「条件付き書式で設定→ソートをかけてもその」の回答画像2
この回答への補足あり
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


おすすめ情報

このQ&Aを見た人がよく見るQ&A