[[20080110140312]] 『入力規則を使用してシート間とセル間をリンクさせ』(AHNY) ページの最後に飛ぶ

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

 

『入力規則を使用してシート間とセル間をリンクさせる』(AHNY)

シート1とシート2に同じ内容のことが書かれています。

シート1は入学前にとった単位を管理するシートで、シート2は入学後の点数を管理するシートです。

それぞれA列には出席番号、B列には氏名があり、C〜AV列までは授業名が書かれてあります。

シート1のC5:AV254は現在空白で、入力する値としては「2」か空白です。

シート2もC5:AV254は現在空白で、「80」、「70」、「60」、「50」を入力させたいので、欄外のBA6=80、BA7=70、BA8=60、BA9=50を入力しています。

そこで、例えば「シート1のC5」に「2」が入力されたら、「シート1のD5」と「シート2のC5」と「シート2のD5」に入力できないようにしたいのです。

また、もし「シート1のC5」と「シート1のD5」が空欄ならば、「シート2のC5」か「シート2のD5」には入力可能にし、、「シート2のC5」に「80」「70」「60」「50」が入力されたら、「シート2のD5」には入力できないようにしたいのです。

拙い説明で申し訳ありませんが、ご指導お願いいたします。


 条件の設定 ユーザー定義
 数式    =INDIRECT("Sheet1!C5")<>2

 「また、もし」の方は、優先順位が必要っぽいから入力規則では無理だと思う。
 条件が矛盾してそうだし、
 「シート1のC5」に「2」が入力されたら入力できない。
 「シート1のC5」と「シート1のD5」が空欄ならば,入力できる?
 良く解りません。
 BJ


わかりにくい説明ですみません。追加で説明します。

現在、シート1のC5には、入力規則で「=IF(D5=2、"―"、$C$4)」と設定しています。C4は2が入力してあります。シート1のD5には、入力規則で「=IF(C5=2、"―"、$C$4)」と設定しています。

シート2のC5には「=IF(INDEX(INDIRECT("Sheet1!C5:AV254")、ROW(A1)、COLUMN(A1))=2、C5、$BA$6:$BA$9)」と入力しています。

ここで、シート1のC5に「2」が入力された場合、シート1のD5とシート2のC5には入力できないように設定できました。しかし、シート2のD5には入力できてしまいます。

同様に、シート1のD5に「2」が入力された場合、シート1のC5とシート2のD5には入力できないようになるのですが、シート2のC5には入力できてしまいます。

本当に拙い説明ですみません。どなたかご指導お願いします。(AHNY)


 1.条件の整理
  入力規則によって、入力データは以下に限定されていますね?
   シート1は「2か空白」、
   シート2は「80、70、60、50か空白」

  すると、条件判断は「数値が入っているかどうか」でやっても、いいことになりそうな気がします.
  その線で条件を簡略化すると、以下になりそう

 (1)Sheet1のC5セルは、D5が数値でなければ、「2」限定、数値であれば空白
 (2)Sheet1のD5セルは、C5が数値でなければ、「2」限定、数値であれば空白

 (3)Sheet2のC5セルは「Sheet1のC5セルとD5セル」および「Sheet2のD5セル」に全く数値がなければ、→※1へ
 (4)Sheet2のD5セルは「Sheet1のC5セルとD5セル」および「Sheet2のC5セル」に全く数値がなければ、→※1へ

         →※1「80,70,60,50」のリスト入力、数値がひとつでもあれば変更不可(≒空白のまま)

 2.上の整理で宜しければ、入力規則の設定を以下の条件式で如何でしょうか?

 (1)Sheet1のC5セル以降に「ユーザー設定」

   =IF(ISBLANK(IF(MOD(MAX(COLUMN()),2),D5,B5)),C5=2,ISBLANK(C5))

 (2)Sheet2のC5セル以降に「リスト設定」

    =IF(COUNT(OFFSET(INDIRECT("Sheet1!"&ADDRESS(MAX(ROW()),MAX(COLUMN()))),0,0,1,4*MOD(MAX(COLUMN()),2)-2),
     IF(MOD(MAX(COLUMN()),2),D5,B5)),C5,$BA$6:$BA$9)

 ※あらぬ処にMAXが入っていますが、COLUMNの配列形式を普通の数値に変換させるだけの意味です

  (半平太)

半平太 様

またまた半平太さんにお手数をおかけすることになりました。すみません。

そして…できました!!!素敵すぎます!!!なんと高度な思考回路なのでしょう(*'▽')/♪

シート1のC5に入力されると、シート1のD5、シート2のC5とD5に入力できなくなりました。

シート1のD5に入力されると、シート1のC5、シート2のC5とD5に入力できなくなりました。

ひとつだけ・・・シート2のC5に入力すると、シート2のD5には入力できなくなりましたが、シート1のC5とD5に戻ると入力できるのです・・・。

これはやむを得ないのでしょうか?でも、私的にはかなり満足です(^-^)

半平太さん、本当にありがとうございます。今後ともよろしくお願いいたします。m(-_-)m (AHNY)


 >ひとつだけ・・・シート2のC5に入力すると、シート2のD5には入力できなくなりましたが、
 >シート1のC5とD5に戻ると入力できるのです・・・。 

 この要件は、今まで言及されていましたか?

 シート1のC5やD5は、お互いの関係に加え、「シート2のC5やD5に数値が入っている時」も、
 入力出来ないことにするのですね?

 であれば、
  ↓
 Sheet1のC5セル以降に「ユーザー設定」の入力規則

   =IF(COUNT(OFFSET(INDIRECT("Sheet2!"&ADDRESS(MAX(ROW()),MAX(COLUMN()))),0,0,1,4*MOD(MAX(COLUMN()),2)-2),
    IF(MOD(MAX(COLUMN()),2),D5,B5)),ISBLANK(C5),C5=2)

 (半平太)

半平太 様

説明不足な私におつきあいいただき本当に感謝いたします(m´・ω・`)m

そして、またできました!!!すごすぎます!!素敵ですヽ(→∀←。)ノ♥

本当にありがとうございました!!!(AHNY)


コメント返信:

[ 一覧(最新更新順) ]


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