プロが教えるわが家の防犯対策術!

条件付書式(の数式の方)で
数式に、
=NETWORKDAYS(TODAY(),$B28)<=4
といれると、
「抽出条件 条件付書式で、他のワークシートまたはブックへの参照は使用しません」というエラーになってしまいます。
これがなぜなのか、また、回避策を教えてください。

他のシートやブックへの参照なんてしてないんですけど。。。

やりたいことは、条件付書式の条件で
今日から数えて、平日日数で3日後までならば、という条件を書きたいです。
Bの列(上記の例ではB28)には日付が入っております。

なお、 =NETWORKDAYS(TODAY(),$B28) そのものは、
単純にセルに入力するときちんと認識されます。
(分析ツールアドイン組込み済み)

よろしくお願いいたします。

A 回答 (5件)

こんばんは!


質問の数式の詳しい内容は判らないのですが・・・

条件付書式の条件に「分析ツール」(WORKDAY・EDATE・EOMONTH等々)の関数は使えませんので

方法としてはその数式が入っているセルを選択し、
挿入 → 名前 → 定義 から名前定義します。

どんな名前でも良いのですが、仮に「実働」と名前定義したとすると

書式設定したいセルを範囲指定(仮にB3~B100を範囲指定したとします。)
数式が → 数式欄に B3=実働 と入れればOKです。

必ず範囲指定した一番左端・一番上側セル番地を入れます。

元のデータがどのようになっているか判らないので
この程度しかお答えできませんが、

参考になれば幸いです、
他に良い方法があれば読み流してくださいね。m(__)m
    • good
    • 0

No.1です!


たびたびごめんなさい。

先ほどの数式欄の式がすこし違っていました。

=B3=実働
と必ず最初に「=」を入れてください。

どうも何度も失礼しました。m(__)m
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

> 条件付書式の条件に「分析ツール」(WORKDAY・EDATE・EOMONTH等々)の関数は使えませんので

これがエラーの原因ですねー。
Excelもそう言ってくれればいいのに。
他のシートやブックへの参照があるとか言って。
アホExcelめ。
原因はわかりました。ありがとうございます。

さて、名前定義での方法なのですが、、、

B列は日付が羅列してあり、こんな感じです。
・・・
10月24日
10月25日
10月26日
10月27日
10月28日
10月29日
10月30日
10月31日
11月1日
11月2日
11月3日
11月4日
11月5日
11月6日
11月7日
11月8日
(文字列ではなくいわゆる日付(シリアル値))

で、(今日からの)3日後までのそのB列そのものの書式を変えたいということです。

ご回答の、
> 書式設定したいセルを範囲指定(仮にB3~B100を範囲指定したとします。)
> 数式が → 数式欄に B3=実働 と入れればOKです。
なのですが、実働という名前をたとえば、
=NETWORKDAYS(TODAY(),$B28)<=4
というセルにつけますと、
どのB列の日付に対しても$B28というひとつのセルの日付で
判定が行われてしまいます。
$B28のセルに対する判定はこれでよいのですが、
B29に対してはB29の日付で判定していきたいのです。

B列のセルそれぞれの判定式のセル(たとえばC列に作ったとして)
に対してひとつひとつ名前をつけるのはナンセンスですので。

名前については定数みたいなものにしかつけたことがないのですが、、、

こちらの回避策がお分かりになれば、ご助言願えませんか?

お礼日時:2009/10/29 22:11

(1)セルC28に、


    =NETWORKDAYS(TODAY(),$B28)
   を入れ、必要行だけコピーする

(2)次に、条件付書式を設定したいセル範囲を選択後、
   条件付書式設定ダイアログで

    式、 =$C28<=4

   を入れる

--------------------------------------------------   
因みに、
分析ツールアドインは、"FUNCRES.XLA"というブックです。
で、「他のブックを参照してるよ」となるのです。

以上です。
 
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

うまく行きました!
言われてみれば、そりゃそうだなあという感じです。。。

条件付書式に関数が入らない時点で思考がストップしてました。

また、
> 分析ツールアドインは、"FUNCRES.XLA"というブックです。
> で、「他のブックを参照してるよ」となるのです。
こちらもすっきりしました。
勉強になりました。
ありがとうございました。

お礼日時:2009/10/29 22:47

》 回避策を教えてください。



式 =NETWORKDAYS(TODAY(),$B28) を入力したセルを参照させたら如何かと。例えばそのセルを X28 とすれば、
[条件付き書式]の数式に、=$X28<=4 を書くのです。
X28 の式を =NETWORKDAYS(TODAY(),$B28)<=4 とすれば、
[条件付き書式]の数式に、=$X28 を書くのです。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

No.3 と同じご回答ですね。
うまく行きました。
ありがとうございました。

お礼日時:2009/10/29 22:49

28行目の任意のセルにおいて


[Ctrl]+[F3]名前の定義
名前 : 実働
参照範囲 : =NETWORKDAYS(TODAY(),$B28)
と名前を定義する

[Ctrl]+[G]ジャンプ B3:B100 と入力し、セル範囲を選択する

[Alt]+[O]-[D]条件付き書式の設定
 数式が =実働<=4

空白セルの処理はしていませんので適宜追加してください
    • good
    • 0

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

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