MENU  □ MANUAL  □ 新着記事  □ 新規トピック追加  □ トピック一覧  □ SEARCH  □ 過去ログ
過去ログ表示

過去ログ6 を表示

表示ログ (過去ログ1) (過去ログ2) (過去ログ3) (過去ログ4) (過去ログ5)
(過去ログ6) (過去ログ7) (過去ログ8) (過去ログ9) (過去ログ10)
(過去ログ11) (過去ログ12) (過去ログ13) (過去ログ14)
過去ログ検索はSEARCHにて。
NO.50116  Re[3]: 並べ替えが出来ない
■投稿者/ りすちゃん
■投稿日/ 2005/07/13(Wed) 13:54:03
□URL/

こんにちは。

A列の記号の並べ替えと同じように
最優先されるキーを『番号』にすればいいだけですよ。

ひょっとして、
記号順、番号順、名前順 としたいならば
最優先を 記号
2番目を 番号
3番目を 名前
とすれば、できると思いますが。  
記事NO.50102 のレス /
削除チェック/

NO.50127  Re[4]: 並べ替えが出来ない
■投稿者/ おなか向上委員会
■投稿日/ 2005/07/13(Wed) 15:54:05
□URL/

 ドラグの開始位置が番号のセルから始まっていないとかかな?
記事NO.50102 のレス /
削除チェック/

NO.50129  Re[5]: 並べ替えが出来ない
■投稿者/ おなか向上委員会
■投稿日/ 2005/07/13(Wed) 16:05:43
□URL/

あらっ、よく読んでませんでしたA列に記号でした。
番号からはじめるとA列は裏引きになるのでそれでかな?

記事NO.50102 のレス /
削除チェック/

NO.50130  Re[6]: 並べ替えが出来ない
■投稿者/ sawako
■投稿日/ 2005/07/13(Wed) 16:17:10
□URL/


優先させる順番を@記号A番号にして並べ替えても
小→大になると思うのですが、
記号はA→Zで並び替えられるのですが、
番号は入力した順なのか不規則な並びのままです。
後から入力したものもどんなに小さい番号でも
その記号の一番最後に並び替えられてしまいます。

記事NO.50102 のレス /
削除チェック/

NO.50133  Re[7]: 並べ替えが出来ない
■投稿者/ とーさん
■投稿日/ 2005/07/13(Wed) 16:52:43
□URL/

具体例が示されませんが、次のようなものを想像してみました。

A B C
1 記号 番号 名前
2 DD 5 月岡
3 XX 4 火野
4 CC 2 水田
5 PP 1 木下
6 AA 3 金本

B2 にカーソルを置いて、「データ」「並べ替え」を選ぶと最優先のキーが「番号」で
昇順にチェックが入っています。これでOKを押すと

A B C
1 記号 番号 名前
2 PP 1 木下
3 CC 2 水田
4 AA 3 金本
5 XX 4 火野
6 DD 5 月岡

となります。sawakoさんのエクセルではこうなりませんか。

それとも、記号に同じものがあって次のような感じでしょうか。

A B C
1 記号 番号 名前
2 DD 5 月岡
3 AA 4 火野
4 AA 2 水田
5 DD 1 木下
6 AA 3 金本

これで、最優先に「記号」、2番目優先に「番号」とすると

A B C
1 記号 番号 名前
4 AA 2 水田
6 AA 3 金本
3 AA 4 火野
5 DD 1 木下
2 DD 5 月岡

となります。AAの中では数字の小さい順に並んでいます。

といった感じで、くり返しますが、本物のデータでなくてよいですから
具体例をお願いします。
記事NO.50102 のレス /
削除チェック/

NO.50132  Re[7]: 並べ替えが出来ない
■投稿者/ りすちゃん
■投稿日/ 2005/07/13(Wed) 16:36:12
□URL/

こんにちは。

昇順・降順はちゃんと選択されていますか?
>優先させる順番を@記号A番号にして並べ替えても
>番号は入力した順なのか不規則な並びのままです。
並び替えられた記号順のうちで、番号順になってませんか?

それとも、まったく別の話として、
『記号・番号・名前』の3つのキーに関連性はない、ということでしょうか?
別々のデータとして、
『記号』を並び替え・『番号』を並び替え・『名前』を並び替え
を、別でしたいってこと?

EXCELは隣り合う列が入力されている場合、1つの表とみなします。
つまり、今回のように並べ替えなどの機能を使うとすれば、
3つの列のデータは、関連した1つのデータベースとして扱われるのです。

別々のものとして扱いたいのであれば、間に空白の列を挿入して非表示にするとか
しないと、できないと思いますが。 
記事NO.50102 のレス /
削除チェック/

NO.50135  Re[8]: 並べ替えが出来ない
■投稿者/ sawako
■投稿日/ 2005/07/13(Wed) 16:56:53
□URL/


> 昇順・降順はちゃんと選択されていますか?
はい。してます。

 例えば、
   A   B   C 
1  記号 番号  名前
2  A   1  □□□
3  B   15  △△△
4  A   18  □□
5  B   2  △△△

 このように入力して@記号順A番号順に並び替えても
A   B   C 
1  記号 番号  名前
2  A   1  □□□
3  A   18  □□
4  B   15  △△△
5  B   2  △△△

 このような感じになって、記号のところは並び替えられても番号は全くそのままです。
 数が少なくて分かりづらいかもしれませんが・・・。
 
記事NO.50102 のレス /
削除チェック/

NO.50134  Re[8]: 並べ替えが出来ない
■投稿者/ とーさん
■投稿日/ 2005/07/13(Wed) 16:55:43
□URL/

りすちゃん、こんにちは。

>別々のものとして扱いたいのであれば、間に空白の列を挿入して非表示にするとか
しないと、できないと思いますが。

列を独立して並べ替えたいときは、その列を選択状態にしたうえで並べ替えをすると、
その列だけでよいか、隣接した列も並べかえるかきいてきますので、その列だけの
並べかえもできます。

 
記事NO.50102 のレス /
削除チェック/

NO.50136  Re[9]: 並べ替えが出来ない
■投稿者/ りすちゃん
■投稿日/ 2005/07/13(Wed) 17:04:47
□URL/

とーさんさん、こんにちは。

そうでしたね・・・、忘れてました。

さてAsawakoさん、
番号が文字列になってますね。それが原因です。
文字列だから、そのようになります。
数値にしないと、お望みのようにはなりません。


この記事にはVBAのコードが含まれています。

緑の太文字→注釈
茶色の太文字→条件分岐
赤の太文字→ループ
青の太文字→その他
記事NO.50102 のレス /
削除チェック/

NO.50159  Re[10]: 並べ替えが出来ない
■投稿者/ とーさん
■投稿日/ 2005/07/14(Thu) 08:30:37
□URL/

>A   B   C 
>1  記号 番号  名前
>2  A   1  □□□
>3  A   18  □□
>4  B   15  △△△
>5  B   2  △△△

 番号の列の並び方がこの例だと、りすちゃんのおっしゃるように、数字の列の設定が文字列になっている可能性がありますね。

 ただ、一番初めの質問では番号が入力順になる、という症状だと書かれているのですが、辞書順(1,10,11,126,13,..,2,20,200,21,..)ではなく入力順だというところがあるのでしょうか。
記事NO.50102 のレス /
削除チェック/

NO.50165  Re[11]: 並べ替えが出来ない
■投稿者/ sawako
■投稿日/ 2005/07/14(Thu) 11:44:13
□URL/

りすちゃんさん、とーさんさん
おっしゃる通り、文字列になっていました。

ありがとうございました。
記事NO.50102 のレス / END
削除チェック/

NO.50040  どの関数で??
■投稿者/ さくら
■投稿日/ 2005/07/12(Tue) 15:21:15
□URL/

どなたか教えてください。

Sheet1にデータとして
A1 B1  C1  D1
aaaa あ 1111 2005/10/01
bbbb い  2222 2005/09/02

     ・
   100件位のデータがあります。

Sheet2のA1
2005/10と入力すると
               
Sheet2のB1,C1,D1にSheet1のA1,B1,C1が2005/10にマッチするデータすべてを表示
したいのですが 
よろしくお願いします。

親記事
削除チェック/

NO.50046  Re[1]: どの関数で??
■投稿者/ 白茶
■投稿日/ 2005/07/12(Tue) 15:52:35
□URL/

ども。

シート2
B1=INDEX(Sheet1!A:A,MATCH($A$1,Sheet1!$D:$D,0))

でD1までフィルコピーとか?
記事NO.50040 のレス /
削除チェック/

NO.50047  Re[2]: どの関数で??
■投稿者/ さくら
■投稿日/ 2005/07/12(Tue) 16:03:04
□URL/

白茶さんありがとうございます。

シート2のA1とシート1のD1がマッチするデータを表示したいのですが?
それと、データのシートは10シートあります。
書き方がややこしくてすいません。

よろしくお願いします。

記事NO.50040 のレス /
削除チェック/

NO.50048  Re[3]: どの関数で??
■投稿者/ さくら
■投稿日/ 2005/07/12(Tue) 16:07:35
□URL/

すいません

追加です。
2005/10と入力したら2005/10/1〜2005/10/31のデータです。

よろしくお願いします。
記事NO.50040 のレス /
削除チェック/

NO.50057  Re[4]: どの関数で??
■投稿者/ 白茶
■投稿日/ 2005/07/12(Tue) 17:41:04
□URL/

すみません。遅くなりました。

>シート2のA1とシート1のD1がマッチするデータを表示したいのですが?
そのつもりでしたが?

シート2のA1と同じ値をシート1のD列から探し出し、
その値がある行のA列B列C列の値をそれぞれ返したのですが。
違いました?

>それと、データのシートは10シートあります。
シート3〜シート10は、上記の質問とどう関わるのでしょうか?



>2005/10と入力したら2005/10/1〜2005/10/31のデータです。

あー。そうなんだ。

シート2
A1の書式設定が「日付」なら、
「2005/10」と入力すれば「2005/10/01」となります。勝手に。
単なる脱字かと思って、
そのつもりで書いちゃいました。
スミマセン。

で・・・?
どうしましょ?

何れにせよ、情報が少ないと思われますが・・・

#と言いつつ、これからまた外出する私。
記事NO.50040 のレス /
削除チェック/

NO.50076  Re[5]: どの関数で??
■投稿者/ さくら
■投稿日/ 2005/07/13(Wed) 08:51:48
□URL/

白茶さんありがとうございます。
説明不足ですいません。

>それと、データのシートは10シートあります。
というのは、2005/10/01〜2005/10/31のデータを10シートの中から抽出したいという意味です。

よろしくお願いします。
記事NO.50040 のレス /
削除チェック/

NO.50077  Re[6]: どの関数で??
■投稿者/ さくら
■投稿日/ 2005/07/13(Wed) 09:20:04
□URL/

白茶さん度々すいません。
>B1=INDEX(Sheet1!A:A,MATCH($A$1,Sheet1!$D:$D,0))
はエラー#N/Aになってしまいました。
記事NO.50040 のレス /
削除チェック/

NO.50079  Re[7]: どの関数で??
■投稿者/ さくら
■投稿日/ 2005/07/13(Wed) 09:29:00
□URL/

この掲示板の編集、削除のやり方がわからないので、またまた追加です。

>B1=INDEX(Sheet1!A:A,MATCH($A$1,Sheet1!$D:$D,0))
の式は、A1に2005/10と入力すると、2005/10/01のデータのみ抽出されます。
#N/Aにはなりません。すいません
記事NO.50040 のレス /
削除チェック/

NO.50145  Re[8]: どの関数で??
■投稿者/ 白茶
■投稿日/ 2005/07/13(Wed) 19:16:58
□URL/

ども。
またまた遅くなっちゃいました。


思いがけず、とっても参考になるヒントが出てますねぇ。

http://excelfactory.net/excelboard/exgeneral/excel.cgi?mode=all&namber=50087&rev=0
[50117] Re[3]: 生年月日を年代別に選ぶ方法-
けんせらせら さんの回答。

求めるものは、ほぼ同じではないでしょうか?

シート2の
A1="2005/10"
は素直に、「2005/10/1」として、
A2=IF(MONTH(A1)=12,A1+30,DATEVALUE(YEAR(A1)&"/"&MONTH(A1)+1&"/1")-1)
で、月末が出ます。

その上で、
けんせらせら さんの回答に従って、
シート1のE列を作業列とし、
=IF((D1>=Sheet2!$A$1)*(D1<=Sheet2!$A$2),ROW())
をフィルコピー。

シート2に
=INDEX(Sheet1!A:A,SMALL(Sheet1!$E:$E,ROW(A1)))
で下へ伸ばせばいいのか。



( ̄□ ̄;)!!あ、忘れてた。10シートから抽出するんだっけ。

各シート別に抽出するのは、
上記×シート数作業すれば出来ますよね。

10シートを一度に検索して抽出する事は、
INDEX関数で可能なのだろか?

あ、名前を定義すれば・・・、

あれ?

出来ないのか?

ん?

出来ないのでは・・・?


記事NO.50040 のレス / END
削除チェック/

NO.50146  Re[9]: どの関数で??
■投稿者/ q- -p
■投稿日/ 2005/07/13(Wed) 20:16:18
□URL/

こんばんは。白茶さん。
だいぶハマってらっしゃるようで。。。
ボクは配列関数苦手なので応援だけにしておきます。

>A2=IF(MONTH(A1)=12,A1+30,DATEVALUE(YEAR(A1)&"/"&MONTH(A1)+1&"/1")-1)
月末なら =EOMONTH(A1,0) で出るようですよ。

もうひとつ『複数のシートにある共通の項目を抽出する』
http://excelfactory.net/excelboard/exgeneral/excel.cgi?mode=all&namber=49675&rev=0
ってどうなんでしょう?
taku さんの式は、ボクにとっては宇宙語の域に達しています(笑)
ので参考になるのかさえわかりませんが、参考まで。
記事NO.50040 のレス /
削除チェック/

NO.50149  Re[10]: どの関数で??
■投稿者/ Rin
■投稿日/ 2005/07/13(Wed) 20:46:18
□URL/

こんばんは〜

あまり色々書くと、質問者の方が
混乱しないか、心配ですが〜

>Sheet1にデータとして
>A1 B1  C1  D1
>aaaa あ 1111 2005/10/01
>bbbb い  2222 2005/09/02
>・
>     ・
>   100件位のデータがあります。

>Sheet2のA1
>2005/10と入力すると
               
>Sheet2のB1,C1,D1にSheet1のA1,B1,C1が2005/10にマッチするデータすべてを表示
>したいのですが 
>よろしくお願いします。

10シートから、↑様なデータを抽出するが、質問でいいのかナ〜

でしたら、

他にもやり方が、あるかとおもいますが、
1シート100行位のデータでしたら、1つのシートへ、
すべて、コピペします。

それから、

白茶さんの言うように
>シート2の
>A1="2005/10"
>は素直に、「2005/10/1」として、

sheet1が、すべてのデータをまとめたシートに
した場合
集計、抽出シートをsheet2の場合

たとえばAsheet1!の作業列をE列にします。

E1:=IF(TEXT(D1,"yyyy/mm")=TEXT(Sheet2!$A$1,"yyyy/mm"),ROW(A1),"")

として、データのある行までコピーします。

sheet2の
B1: =IF(COUNT(Sheet1!$E:$E)<ROW(A1),"",INDEX(Sheet1!A:A,SMALL(Sheet1!
$E:$E,ROW(A1))))

右と下に、コピーします。

で、抽出できるとおもいます。

カン違いなら、ゴメンナサイ・・・Rinでした〜♪♪









この記事にはVBAのコードが含まれています。

緑の太文字→注釈
茶色の太文字→条件分岐
赤の太文字→ループ
青の太文字→その他
記事NO.50040 のレス /
削除チェック/

NO.50160  Re[11]: どの関数で??
■投稿者/ さくら
■投稿日/ 2005/07/14(Thu) 08:40:54
□URL/

みなさんありがとうございます。

関数にあまり詳しくないので、勉強しながらやってみます。

記事NO.50040 のレス /
削除チェック/

NO.50163  Re[12]: どの関数で??
■投稿者/ さくら
■投稿日/ 2005/07/14(Thu) 11:26:52
□URL/

今回はRinさんの方法でやってみました。
うまくいきました。
みなさんありがとうございます。

とても勉強になりました。
記事NO.50040 のレス / END
削除チェック/

NO.50166  Re[13]: どフ関数で??
■投稿者/ 白茶
■投稿日/ 2005/07/14(Thu) 12:10:10
□URL/


さくらさん、解決おめでとうございました。


( ̄▽ ̄;) いやー、

この板は良いですねぇ。
惜しみなく助け舟を出してくれる方々がたくさん居て。


q- -pさん紹介の
=EOMONTH(A1,0)
ですが、これってaddですかね?
うちのExcel2000にゃ認識されませんでした。


例のtaku さんの式・・・

| |д・) ソォーッ・・
っと蓋しちゃおうかな・・・
未だに解読中。


Rinさんもどうもです。
そうよね。
1シートにまとめりゃ良かったのよね。

何はともあれ、解決マークがついて白茶も一安心です。
みなさん今後とも宜しくお願いします。

記事NO.50040 のレス /
削除チェック/

NO.50167  Re[14]: どフ関数で??
■投稿者/ q- -p
■投稿日/ 2005/07/14(Thu) 12:27:34
□URL/

こんにちは。白茶さん。

>=EOMONTH(A1,0)
>ですが、これってaddですかね?
そうです。[分析ツール]・・・ごめんなさい。説明不足でした。

解決して良かったですね。
関数って奥深いですよねー・・・ってまた実感しちゃったスレでした。
記事NO.50040 のレス /
削除チェック/

NO.50162  時間の集計の仕方を教えて下さい
■投稿者/ 1労働者
■投稿日/ 2005/07/14(Thu) 11:00:13
□URL/


時間の集計をしたいのですが、どのような数式を用いたら良いでしょうか?
例えば、
 1時間40分+2時間30分=4時間10分 という結果を出したいのですが。

初心者につき全く良い解決方法が判りません。
よろしくお願いします。


++++++++++++++++++++
OS      ⇒Windows 2000
Version⇒Excel 2000
++++++++++++++++++++
親記事
削除チェック/

NO.50164  Re[1]: 時間の集計の仕方を教えて下さい
■投稿者/ とうりすがり
■投稿日/ 2005/07/14(Thu) 11:37:22
□URL/

間違えてたらすいません。

ツールバー→書式→セル→表示形式
ユーザー定義で、右側の種類の所にh"時""間"mm"分"と入力してすべてのセルに
設定して合計はSUM関数でいかかですか?
記事NO.50162 のレス /
削除チェック/

NO.50169  Re[2]: 時間の集計の仕方を教えて下さい
■投稿者/ 1労働者
■投稿日/ 2005/07/14(Thu) 13:07:50
□URL/

早速の回答ありがとうございます。
試してみましたが、表示形式はうまくいきましたが
集計がうまくいきません。
合計が24時間を越えると、また1時間からカウントしてしまいます。
 (例)20時間+5時間=1時間

当方としては、25時間と表示したいのですが・・・・
記事NO.50162 のレス /
削除チェック/

NO.50170  Re[3]: 時間の集計の仕方を教えて下さい
■投稿者/ Rin
■投稿日/ 2005/07/14(Thu) 13:22:36
□URL/

こんにちは〜

とおりすがりさんの

>ツールバー→書式→セル→表示形式
>ユーザー定義で、右側の種類の所にh"時""間"mm"分"と入力してすべてのセルに
>設定して合計はSUM関数でいかかですか?

合計セル(SUM関数の入るセル)も

ユーザー定義で、h"時""間"mm"分"

に、しましたか?

計算できるはずですが〜・・・Rinでした〜♪♪


記事NO.50162 のレス /
削除チェック/

NO.50173  Re[4]: 時間の集計の仕方を教えて下さい
■投稿者/ けんせらせら
■投稿日/ 2005/07/14(Thu) 14:07:18
□URL/

こんにちは

24時間を越える時間の計算では

h"時""間"mm"分"  としただけでは

>合計が24時間を越えると、また1時間からカウントしてしまいます。

と言う事になってしまうと思います。

[h]"時""間"mm"分" と hの部分を [ ] でくくると

20時間00分+5時間00分=25時間00分

と計算が出来るはずです。

[h]"時間"mm"分" 
[h]"時間"m"分"

のようにしてもいいでしょう。

3つほど簡単な例を挙げましたが、それぞれお試しになって
ご自身のご都合の良い物をお使い下さい。
記事NO.50162 のレス /
削除チェック/

NO.50172  Re[4]: 時間の集計の仕方を教えて下さい
■投稿者/ 1労働者
■投稿日/ 2005/07/14(Thu) 13:56:13
□URL/

はい、合計セルにも同じように表示形式を設定しました。
記事NO.50162 のレス /
削除チェック/

NO.50175  Re[5]: 時間の集計の仕方を教えて下さい
■投稿者/ Rin
■投稿日/ 2005/07/14(Thu) 14:29:38
□URL/

ふたたび〜です

けんせらせらさん

>24時間を越える時間の計算では

>h"時""間"mm"分"  としただけでは

>合計が24時間を越えると、また1時間からカウントしてしまいます。

>と言う事になってしまうと思います。

もう一度みたら、[ ]が、無かったですネ〜
そそっかしいので・・・

失礼しました〜

これからも、たすけてください〜・・・Rin

記事NO.50162 のレス /
削除チェック/

NO.50176  Re[6]: 時間の集計の仕方を教えて下さい
■投稿者/ 1労働者
■投稿日/ 2005/07/14(Thu) 15:22:15
□URL/

皆様どうもありがとうございました!!
バッチリ計算出来ました。
ちょっと感動してしまいました。

今後ともつまらない質問をするかと思いますが、宜しくご指導願います。
記事NO.50162 のレス / END
削除チェック/

NO.50142  数字の表示を上から2桁にしたい
■投稿者/ こんどう
■投稿日/ 2005/07/13(Wed) 18:41:10
□URL/

計算結果の表示をこの様にしたいのですが、方法がわかりません。
回答よろしくお願い致します。

  0.098→0.09
  0.198→0.19
  3.058→3.0
 41.999→41
 
親記事
削除チェック/

NO.50144  Re[1]: 数字の表示を上から2桁にしたい
■投稿者/ q- -p
■投稿日/ 2005/07/13(Wed) 18:57:14
□URL/

こんばんは。 こんどうさん。

最近何か似たようなスレありましたよ。
『上から2けたの概数で表すには』
http://excelfactory.net/excelboard/exgeneral/excel.cgi?mode=all&namber=49535&rev=0
こちら参考になりますか?
(内容については消化できてないのでとりあえず紹介まで)
記事NO.50142 のレス /
削除チェック/

NO.50157  Re[2]: 数字の表示を上から2桁にしたい
■投稿者/ ?
■投稿日/ 2005/07/13(Wed) 23:51:18
□URL/

あまり色々なところで聞くと、
お礼を言い忘れますよ。
記事NO.50142 のレス /
削除チェック/

NO.50186  Re[3]: 数字の表示を上から2桁にしたい
■投稿者/ こんどう
■投稿日/ 2005/07/14(Thu) 19:59:44
□URL/

ご指摘ご回答ありがございました。(謝)
記事NO.50142 のレス / END
削除チェック/

NO.50179  Averagea関数について
■投稿者/ RIKA
■投稿日/ 2005/07/14(Thu) 18:05:04
□URL/

V24セルに、下の式を入れました
=IF(ISERROR(AVERAGEA(I24,K24)),0,AVERAGEA(I24,K24))

I24は82、K24は空白セルとなっています。
Averagea関数は、空白を文字列を 0 とみなすはずなのに、計算結果は82です。
なぜでしょうか?




++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2000
++++++++++++++++++++
親記事
削除チェック/

NO.50180  Re[1]: Averagea関数について
■投稿者/ 白茶
■投稿日/ 2005/07/14(Thu) 18:29:23
□URL/


ども。

AVERAGEは範囲内の数値の合計を、
範囲内の「数値」の入ったセルの個数で割り算します。
(数値でないものは分母に含まない)

AVERAGEAは範囲内の数値の合計を、
範囲指定したセルの個数で割り算します。
(数値であろうがなかろうが、空白だろうが分母に含む)

と言う考え方です。
記事NO.50179 のレス /
削除チェック/

NO.50181  Re[2]: Averagea関数について
■投稿者/ 白茶
■投稿日/ 2005/07/14(Thu) 18:31:46
□URL/

あ、大嘘ついてるかも・・・。
記事NO.50179 のレス /
削除チェック/

NO.50182  Re[3]: Averagea関数について
■投稿者/ *****
■投稿日/ 2005/07/14(Thu) 18:37:45
□URL/

>計算結果は82です。
41にしたいのですか?
=(I24+K24)/2

記事NO.50179 のレス /
削除チェック/

NO.50184  Re[4]: Averagea関数について
■投稿者/ 白茶
■投稿日/ 2005/07/14(Thu) 18:49:06
□URL/


やや、

やっぱり大嘘かましちゃいましたね。
ひー、ゴメンなさい。


COUNTとCOUNTAの関係と同じですね。

COUNTAのヘルプより抜粋:
COUNTA 関数では、空白文字列 ("") を含め、
すべてのデータ型の値が計算の対象となります。
ただし、空白セルだけは計算の対象となりません。

AVERAGEAの分母も
空白セルはカウントしないようですね。

失礼しまっした。

記事NO.50179 のレス /
削除チェック/

NO.50187  Re[5]: Averagea関数について
■投稿者/ Rin
■投稿日/ 2005/07/14(Thu) 20:08:30
□URL/

こんばんは〜

白茶さんの説明で、解決とおもいますが

AVERAGEA関数のヘルプより


引数として指定した配列またはセル参照に文字列が含まれる場合、これらは 0 (ゼロ) と見なされます。空白文字列 ("") は、値が 0 (ゼロ) であると見なされます。計算の対象に文字列の値を含めない場合は、AVERAGE 関数を使用してください。

この中の

→空白文字列 ("") は、値が 0 (ゼロ) であると見なされます

この場合の空白は、

白茶さんも説明されていますが

空白文字列 ("") は

何も入力していないセルと
いう意味ではなく

K24:=""

に、するとわかりますが



K24: =IF(L24="","",L24)

などの式で返した、空白文字列 ("") の

事ですネ・・・Rin

白茶さん
おせっかいで、ゴメンナサイ




記事NO.50179 のレス /
削除チェック/

NO.50185  Re[5]: Averagea関数について
■投稿者/ RIKA
■投稿日/ 2005/07/14(Thu) 19:43:31
□URL/

空白セルと、空白文字列 の違いはなんでしょうか?
記事NO.50179 のレス /
削除チェック/

NO.50188  Re[6]: Averagea関数について
■投稿者/ Rin
■投稿日/ 2005/07/14(Thu) 20:10:31
□URL/

みにくくて
ゴメンナサイ

もう一度

こんばんは〜

白茶さんの説明で、解決とおもいますが

AVERAGEA関数のヘルプより


引数として指定した配列またはセル参照に文字列が含まれる場合、これらは 0 (ゼ
ロ) と見なされます。空白文字列 ("") は、値が 0 (ゼロ) であると見なされま
す。計算の対象に文字列の値を含めない場合は、AVERAGE 関数を使用してくださ
い。


この中の

→空白文字列 ("") は、値が 0 (ゼロ) であると見なされます

この場合の空白は、

白茶さんも説明されていますが

空白文字列 ("") は

何も入力していないセルと
いう意味ではなく

K24:=""

に、するとわかりますが



K24: =IF(L24="","",L24)

などの式で返した、空白文字列 ("") の

事ですネ・・・Rin

白茶さん
おせっかいで、ゴメンナサイ
記事NO.50179 のレス /
削除チェック/

NO.50194  Re[7]: Averagea関数について
■投稿者/ *****
■投稿日/ 2005/07/15(Fri) 08:01:00
□URL/

老婆心ながら少々苦言を。

>空白セルと、空白文字列 の違いはなんでしょうか?
貴方のその疑問は何処にも書いていないのでは?
では何故みなさん知っているのか?
少々考えてみる・少々弄ってみる
たったこれだけでその疑問は解決してしまうからです。
決して聞く事は悪い事ではありません。
しかしそれだけでは疑問に思います。
自分自身で解決に導く、その過程が大事であり必要な事と思います。
答えを知るだけでは「なんだそうか」で終わってしまいますよ。

記事NO.50179 のレス /
削除チェック/

NO.50192  ワークシート上でのComboboxでプロパティ(ListFillRange)に値が入力できない
■投稿者/ hanakoara
■投稿日/ 2005/07/15(Fri) 00:34:33
□URL/

ワークシート上でのComboBoxプロパティのListFillRangeの項目に値(Sheet2!A1:A5と入力しました)を入れてリターンキーを押すと入力した値が消えてしまいます。
どんなことが考えられるでしょうか?
お知恵をお貸し下さい。よろしくお願いします。


この記事にはVBAのコードが含まれています。

緑の太文字→注釈
茶色の太文字→条件分岐
赤の太文字→ループ
青の太文字→その他



++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2002
++++++++++++++++++++
親記事
削除チェック/

NO.50193  Re[1]: ワークシート上でのComboboxでプロパティ(ListFillRange)に値が入力できない
■投稿者/ q- -p
■投稿日/ 2005/07/15(Fri) 00:52:05
□URL/

こんばんは。 hanakoaraさん。

>どんなことが考えられるでしょうか?
単純に考えればスペルミス。
(はずしてて失礼な言い方に聞こえたらほんとうにごめんなさい)
環境は違いますが、試しに存在しないシート名で入力したら、こちらも消えました。

Sub 回避サンプル()
Dim myRng As Range
On Error Resume Next
Set myRng = Application.InputBox("リスト範囲を選択してください。", Type:=8)
On Error GoTo 0
If myRng Is Nothing Then Exit Sub
ActiveSheet.ComboBox1.ListFillRange = myRng.Parent.Name & "!" & myRng.Address
Set myRng = Nothing
End Sub


この記事にはVBAのコードが含まれています。

緑の太文字→注釈
茶色の太文字→条件分岐
赤の太文字→ループ
青の太文字→その他
記事NO.50192 のレス /
削除チェック/

NO.50195  Re[2]: ワークシート上でのComboboxでプロパティ(ListFillRange)に値が入力できない
■投稿者/ 独覚
■投稿日/ 2005/07/15(Fri) 09:17:05
□URL/

もしシート名にスペースやカッコが含まれている場合は
'Sheet 2'!A1:A5
のようにシート名を「'」でくくってみてください。
記事NO.50192 のレス /
削除チェック/

NO.50196  データの入力リストでリスト以外の値の入力を許可
■投稿者/ 青空
■投稿日/ 2005/07/15(Fri) 09:24:59
□URL/

おはようございます。
よろしくお願いいたします。

タイトル通りなのですが、
データの入力規則で、予想外のデータが出てきた場合に、
リスト以外の値の入力を許可したいのですが、
できるのでしょうか?



++++++++++++++++++++
OS      ⇒Windows 98
Version⇒Excel 2000
++++++++++++++++++++
親記事
削除チェック/

NO.50197  Re[1]: データの入力リストでリスト以外の値の入力を許可
■投稿者/ 独覚
■投稿日/ 2005/07/15(Fri) 09:27:51
□URL/

「入力規則」の「エラーメッセージ」タブで「スタイル」を「停止」以外にするとメッセージは表示されるが
入力可能に、「不正なデータが…」のチェックを外すとメッセージも出さずに入力可能となります。
記事NO.50196 のレス /
削除チェック/

NO.50198  Re[2]: データの入力リストでリスト以外の値の入力を許可
■投稿者/ 青空
■投稿日/ 2005/07/15(Fri) 09:52:03
□URL/

独覚 さん

早速のレスをありがとうございます。

仰る通りでできました。

ありがとうございました。

今後ともよろしくお願いいたします。



++++++++++++++++++++
OS      ⇒Windows 98
Version⇒Excel 2000
++++++++++++++++++++
記事NO.50196 のレス / END
削除チェック/

NO.50147  保存時のエラ−について
■投稿者/ まさ
■投稿日/ 2005/07/13(Wed) 20:20:38
□URL/

いつも勉強させて頂いています。

上書き保存のコマンドを押すと次の様なメッセ−ジが出ます。

'H1707マコロ.xls'が見つかりません。ファイル名およびファイルの保存場所が正しいかどうかく確認して下さい。
[ファイル]メニュ−の最近使用したファイルの一覧からファイルを開こうとしている場合は、そのファイルの名前が変更されていないこと、移動または削除されていないことを確認してください。

上記の様なエラ−メッセジが上書き保存コマンドを使うと出て、上書き保存のアイコンを押すと出ません。
どうしたら、このエラ−メッセ−ジが消せるでしようか。

私ではなく、会社の女の子が困っています。私はOS2000を使用していますのでXPを使用しています会社の女の子とは画面が全然違い分かりません。

エラ−の意味・エラ−の解消方法が分かりましたら
教えて頂けないでしょうか。

しくよろお願いします。




++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2003
++++++++++++++++++++
親記事
削除チェック/

NO.50150  Re[1]: 保存時のエラ−について
■投稿者/ チオチモリン
■投稿日/ 2005/07/13(Wed) 20:52:11
□URL/

こんばんは

>上書き保存コマンド

って何でしょうか?。
マクロが登録してあるボタン等でしょうか?
もしそうでしたら
>エラ−の解消方法
は、コードの修正です。

>私はOS2000を使用していますのでXPを使用しています会社の女の子とは画面が全然違い分かりません。

OSが関係しているということですか?
記事NO.50147 のレス /
削除チェック/

NO.50152  Re[2]: 保存時のエラ−について
■投稿者/ まさ
■投稿日/ 2005/07/13(Wed) 22:58:20
□URL/

チオチモリンさん、説明が下手ですみません。

>上書き保存コマンド
これは、ファイル(F)→上書き保存(S)の事です。
マクロではありません。
これで上記の様なエラ−が表示されます。

>上書き保存のアイコン
これは、フロッピ−の絵のアイコンの事です。

OSが関係しているか分かりませんが
私が使用しているPCが2000なので
そのエラ−がでるPCがXPで、私のエクセルの画面と
全然違い、私が分からないだけでOSは関係ないと思います。

説明下手で申し訳ありません。






++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2003
++++++++++++++++++++
記事NO.50147 のレス /
削除チェック/

NO.50158  Re[3]: 保存時のエラ−について
■投稿者/ チオチモリン
■投稿日/ 2005/07/14(Thu) 00:33:08
□URL/

こんばんは

> >上書き保存コマンド
> これは、ファイル(F)→上書き保存(S)の事です。
> マクロではありません。

確認はされましたか?
↓のマクロを走らせたとき、もし 表示があるなら、それが 登録されているマクロということになります。

Sub Test()
MsgBox Application.CommandBars(1).FindControl(, 3, , , True).OnAction
End Sub

困っている会社の女の子のPCで確認してみてください。

※ もちろん 確認の方法は ↑ でなくともかまいません。


この記事にはVBAのコードが含まれています。

緑の太文字→注釈
茶色の太文字→条件分岐
赤の太文字→ループ
青の太文字→その他
記事NO.50147 のレス /
削除チェック/

NO.50161  Re[4]: 保存時のエラ−について
■投稿者/ まさ
■投稿日/ 2005/07/14(Thu) 09:37:27
□URL/

チオチモリンさん、有難うございます。

ご指示の通りのマクロを走らせる様に女の子に言いました。

そうすると

'C:\Documents and Settings\USER10\デスクトップ\H1707マコロ.xls'!印刷用台帳

この様なメッセ−ジが出た様です。

H1707マコロ.xlsというファイルのゴミがのこっているのでしょうか。

デスクトップのアイコンを整列させファイルが出てきたら削除でいいのでしょうか。
ファイルとは別のマクロ(ビジュアル ベ−シック エディタ−)を見るのでしょうか。

よろしくお願いします。


この記事にはVBAのコードが含まれています。

緑の太文字→注釈
茶色の太文字→条件分岐
赤の太文字→ループ
青の太文字→その他
記事NO.50147 のレス /
削除チェック/

NO.50183  Re[5]: 保存時のエラ−について
■投稿者/ チオチモリン
■投稿日/ 2005/07/14(Thu) 18:46:10
□URL/

こんばんは

>'C:\Documents and Settings\USER10\デスクトップ\H1707マコロ.xls'!印刷用台帳
>この様なメッセ−ジが出た様です。

ということは、
>ファイル(F)→上書き保存(S)
にマクロが登録されているということです。

で どうしたいかという選択肢により対応が変わるのですが、
>ファイル(F)→上書き保存(S)

>上書き保存のアイコン
と同じ状況にしたいということなら、(一般操作でも出来ますが) ↓ のマクロを走らせて見てください。

Sub マクロ登録の解除()
Application.CommandBars(1).FindControl(, 3, , , True).Reset
End Sub



この記事にはVBAのコードが含まれています。

緑の太文字→注釈
茶色の太文字→条件分岐
赤の太文字→ループ
青の太文字→その他
記事NO.50147 のレス /
削除チェック/

NO.50207  Re[6]: 保存時のエラ−について
■投稿者/ まさ
■投稿日/ 2005/07/15(Fri) 10:58:55
□URL/

チオチモリンさん、お礼が遅くなり有難うございました。

解決しました。

本当に有難うございました。
記事NO.50147 のレス / END
削除チェック/

NO.50148  マクロのMicrosoft Script Editor について
■投稿者/ まさ
■投稿日/ 2005/07/13(Wed) 20:27:35
□URL/

いつも勉強させて頂いています。

ツ−ル−マクロのMicrosoft Script Editor についてお聞きしたいのですが
お願いします。

Html文書の様なもので表示されまずが、これはなんでしょうか。
空白のShootを表示させても出ますし、消しても削除しても出ます。

これは何でしょうか。
エクセルのエラ−でしょうか。
会社の女の子が困っています。

ツ−ル−マクロのMicrosoft Script Editor このコマンドが何か、そして
削除しても消えないですが大丈夫なのか、そして空白sheetを出しても
htmlコマンドの様なものが入力されています。

大丈夫でしょうか?
エラ−でしょうか?

ご教授お願いします。

よろしくお願いします。





++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2003
++++++++++++++++++++
親記事
削除チェック/

NO.50151  Re[1]: マクロのMicrosoft Script Editor について
■投稿者/ q- -p
■投稿日/ 2005/07/13(Wed) 21:33:50
□URL/

こんばんは。まささん。

今ひとつ状況がつかめていません。ごめんなさい。

「何かの作業をおこなっている時に、何かのエラーメッセージとともに
Microsoft Script Editorが起動される」・・・といった事なのでしょうか?

そうであれば
1)何の作業中ですか?
2)ファイルの種類は何ですか?
3)エラーメッセージは何と出ますか?
といった情報が欲しいのですが。

何もなしにメニューから起動させるだけであれば
EXCELのエラーとは関係ないと思いますよ。

ちなみにMicrosoft Script Editorについては全然詳しくないですが
HELPファイルによると
『Microsoft Script Editor を使うことによって、HTML および ASP (Active Server Page) ファイルの HTML タグを表示し、編集することができます。Microsoft Visual Basic, Scripting Edition (VBScript)、Jscript などのスクリプトをファイルに追加して、そのスクリプトをデバッグすることもできます。』
ですのでEXCELの本機能とは別の、
HTMLファイルとVBScriptコードの編集ソフトだと思ってもらえばいい・・・のかな?
これ以上のつっこみが必要であればVBA板のほうで。。。
記事NO.50148 のレス /
削除チェック/

NO.50153  Re[2]: マクロのMicrosoft Script Editor について
■投稿者/ まさ
■投稿日/ 2005/07/13(Wed) 23:02:53
□URL/

q- -p -さん、有難うございます。

明日、もう少し詳しく会社の女の子に
1)何の作業中ですか?
2)ファイルの種類は何ですか?
3)エラーメッセージは何と出ますか?
この様な事を確認し、連絡します。

中途半端な情報で申し訳ありませんでした。
また、よろしくお願いします。
記事NO.50148 のレス /
削除チェック/

NO.50208  Re[3]: マクロのMicrosoft Script Editor について
■投稿者/ まさ
■投稿日/ 2005/07/15(Fri) 11:00:40
□URL/


何とか自分で解決できました。

q- -pさん、有難うございました。

初歩的な事でした。

お騒がせしました。

有難うございました。
記事NO.50148 のレス / END
削除チェック/

NO.50213  シートのサイズを小さくしたい
■投稿者/ エクセル勉強中
■投稿日/ 2005/07/15(Fri) 11:31:34
□URL/

エクセルにてシートが20シートあるファイルを使用しており、ファイルサイズを小さくしたいと考えております。シートは20シートあるのですが使っている範囲は列がBZ列、行は20行位のため残りの部分を何かの方法で削除してサイズを小さくすることは可能でしょうか?
また、上記の方法以外でサイズを小さくする方法があればよろしくお願い致します



++++++++++++++++++++
OS      ⇒Windows 2000
Version⇒Excel 2000
++++++++++++++++++++
親記事
削除チェック/

NO.50214  Re[1]: シートのサイズを小さくしたい
■投稿者/ boy
■投稿日/ 2005/07/15(Fri) 11:36:27
□URL/

こんにちは。

>使っている範囲は列がBZ列、行は20行位のため残りの部分を
>何かの方法で削除してサイズを小さくすることは可能でしょうか?

は無理だと思います。

メモリを節約するワークシートの作成方法
http://support.microsoft.com/default.aspx?scid=kb;ja;405485



「最後のセル」の位置を修正する方法
http://support.microsoft.com/default.aspx?scid=kb;ja;405492

こちら↑を参考にしてみてください。
記事NO.50213 のレス /
削除チェック/

NO.50171  エクスプローラでダブルクリックすると上書き保存できません
■投稿者/ cad
■投稿日/ 2005/07/14(Thu) 13:52:01
□URL/

エクスプローラでエクセルファイルをダブルクリックして開くと、ファイル名の後に「1」が付いてしまい、上書き保存する際にフォルダを指定しなくてはいけなくなっています。エクスプローラで右クリックしたとき、一番上が「新規作成」になっているのが原因ではないかと思うのですが・・・ほかのマシンでは「開く」が一番上になっていて、上書き保存もできます。どうやって「開く」に変えたらよいのかわかりません。初心者質問ですみませんが、よろしくお願いします。


++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2002
++++++++++++++++++++
親記事
削除チェック/

NO.50174  Re[1]: エクスプローラでダブルクリックすると上書き保存できません
■投稿者/ 独覚
■投稿日/ 2005/07/14(Thu) 14:15:59
□URL/

当方Windows2000のためメニュー名などが異なっているかもしれません。

「コントロールパネル」の「フォルダオプション」を開き、「ファイルタイプ」タブを選択してください。

ファイルタイプ内で「拡張子」が「XLS」の物を選択して「詳細設定」ボタンを押してください。
「アクション」欄でたぶん「New」(あるいは「新規作成」)が太字になっていると思います。
そこで「Open」(あるいは「開く」)を選択して「標準」ボタンを押してください。
「Open」が太字になったのを確認して「OK」で閉じて下さい。
記事NO.50171 のレス /
削除チェック/

NO.50223  Re[2]: エクスプローラでダブルクリックすると上書き保存できません
■投稿者/ cad
■投稿日/ 2005/07/15(Fri) 13:52:08
□URL/

独覚さん、ありがとうございました。確認したところ、ご指摘の通り新規作成が太字になっていました。Openを選択し、上書き保存できるようになりました。
記事NO.50171 のレス / END
削除チェック/

NO.50211  フォームのチェックボックスについて
■投稿者/ taka0309
■投稿日/ 2005/07/15(Fri) 11:24:47
□URL/

フォームで作成するチェックボックスについて質問いたします。

「はい」、「いいえ」、「どちらでもない」の回答を得る為、1つ質問に対して3つチェックボックスを作成しました。最初に「はい」にした後、「いいえ」に変更する場合、「いいえ」をクリックしても「はい」にチェックが入ったままです。別の回答にチェックをした場合、既存のチェックをはずしたいのですが、方法がわかりません。
どなたかご教示くださいませ。よろしくお願いいたします。


++++++++++++++++++++
OS      ⇒Windows 2000
Version⇒Excel 2002
++++++++++++++++++++
親記事
削除チェック/

NO.50215  Re[1]: フォームのチェックボックスについて
■投稿者/ けんせらせら
■投稿日/ 2005/07/15(Fri) 11:43:14
□URL/

こんにちは

チェックボックスではなく

オプションボタンで対応すればよいのではないでしょうか。
記事NO.50211 のレス /
削除チェック/

NO.50225  Re[2]: フォームのチェックボックスについて
■投稿者/ taka0309
■投稿日/ 2005/07/15(Fri) 14:33:39
□URL/

けんせらせら 様

こんにちは。
早速のご対応ありがとうございます。
なるほどっ!解決です。

今後もよろしくおねがいいたします。
taka0309
記事NO.50211 のレス / END
削除チェック/

NO.50177  大量の相対参照をすべて絶対参照へ
■投稿者/ m.matsui(初心者)
■投稿日/ 2005/07/14(Thu) 17:42:04
□URL/

すべて相対参照(A1)でさまざまな計算式をシート上に作っておりまして、それらをすべて絶対参照($A$1)にする手早い方法はありませんでしょうか?

エクセルのヘルプではF4キーで変更できるとの内容でしたが、複数のセル参照がある式ではF4キーは使用できないようなのです。

実はつい先日まで、絶対参照というものを知りませんでした。

かなりの量があり、セルのひとつひとつを手入力で変更すると大変な作業になってしまいそうです。

なにかヒントがあれば、ぜひ教えていただけないでしょか。

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



++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2003
++++++++++++++++++++
親記事
削除チェック/

NO.50178  Re[1]: 大量の相対参照をすべて絶対参照へ
■投稿者/ *****
■投稿日/ 2005/07/14(Thu) 17:53:30
□URL/

どの位の量があるのか分りませんが・・・。
その前に、何故その様な事が必要なのでしょう?
当然その後にそのセルを右や下へとコピーしていく目的でしょう。
とするとそんなに量があるのですか?
また$A$1の様にすると言う事はそのセルを左右上下に・・・
ですよね。
尚更そんなに量があるのか疑問に思えます。

沢山あって大変との思いなら、
その目的からの質問に変えられたらと思いますが。
記事NO.50177 のレス /
削除チェック/

NO.50189  Re[2]: 大量の相対参照をすべて絶対参照へ
■投稿者/ ケイン
■投稿日/ 2005/07/14(Thu) 20:56:33
□URL/

大量の処理が必要なら、マクロを組むしかありませんね。
選択したセル範囲に対して一括処理をするなら、以下のようなコードになります。

Sub F_Conv()
Dim C As Range, FSt As String

If TypeName(Selection) <> "Range" Then Exit Sub
For Each C In Selection
If C.HasFormula THen
FSt = C.Formula
C.Formula = Application _
.ConvertFormula(Fst, xlA1, xlA1, xlAbsolute)
End If
Next
End Sub

もしアクティブシート内で、数式を埋めたすべてのセルに対して処理を行うなら

Sub F_Conv_All()
Dim MyR As Range, C As Range
Dim FSt As String

On Error GoTo ELine
Set MyR = Cells.SpecialCells(3)
On Error GoTo 0
For Each C In MyR
Fst = C.Formula
C.Formula = Application _
.ConvertFormula(Fst, xlA1, xlA1, xlAbsolute)
Next
Set MyR = Nothing: Exit Sub
ELine:
MsgBox "このシートには数式が入力されていません", 48
End Sub

注: いずれも元の数式は A1形式 という前提です。


この記事にはVBAのコードが含まれています。

緑の太文字→注釈
茶色の太文字→条件分岐
赤の太文字→ループ
青の太文字→その他
記事NO.50177 のレス /
削除チェック/

NO.50190  Re[3]: 大量の相対参照をすべて絶対参照へ
■投稿者/ ケイン
■投稿日/ 2005/07/14(Thu) 21:01:26
□URL/

いちおう ConvertFormula メソッド のヘルプをコピペしておきますね。
---------------------------------------------------------------------
数式のセル参照を変換します。A1 形式と R1C1 形式の変換、相対参照と絶対参照の
変換、またはその両方の変換が可能です。

構文

object.ConvertFormula(formula, fromReferenceStyle, toReferenceStyle, toAbsolute, relativeTo)

object

必ず指定します。Application オブジェクトを指定します。

formula

必ず指定します。変換対象となる数式が含まれる文字列を指定します。
必ず、有効な数式を指定し、数式の先頭には等号 (=) を付けてください。

fromReferenceStyle

必ず指定します。変換前の参照形式を指定します。
指定できるのは、xlA1 または xlR1C1 のいずれか一つです。

toReferenceStyle

省略可能です。変換後の参照形式を指定します。
指定できるのは、xlA1 または xlR1C1 のいずれか一つです。
省略すると、参照形式は変更されません。引数 fromReferenceStyle で指定された
形式のままです。

toAbsolute

省略可能です。変換後の参照の種類を指定します。
この引数を省略すると、参照の種類は変更されません。
次に示す定数の中の 1 つを指定します。

定数 内容

xlAbsolute 列および行ともに絶対参照。
xlAbsRowRelColumn 行は絶対参照、列は相対参照。
xlRelRowAbsColumn 行は相対参照、列は絶対参照。
xlRelative 行および列ともに相対参照。

relativeTo

省略可能です。1 つのセルを含む Range オブジェクトを指定します。
このオブジェクトによって、相対参照の基準となるセルが決まります。


この記事にはVBAのコードが含まれています。

緑の太文字→注釈
茶色の太文字→条件分岐
赤の太文字→ループ
青の太文字→その他
記事NO.50177 のレス /
削除チェック/

NO.50191  Re[4]: 大量の相対参照をすべて絶対参照へ
■投稿者/ GON
■投稿日/ 2005/07/14(Thu) 21:27:33
□URL/

「編集」「置換」「検索する文字列」「=A1」「置換後の文字列」「=$a$1」
「すべて置換」
でいいかと思います。2002ではとりあえずいけました。


++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2002
++++++++++++++++++++
記事NO.50177 のレス /
削除チェック/

NO.50227  Re[5]: 大量の相対参照をすべて絶対参照へ
■投稿者/ m.matsui(初心者)
■投稿日/ 2005/07/15(Fri) 15:42:47
□URL/

ConvertFormula、とても参考になりました。私のヘルプの探し方も甘かったようです。ありがとうございました。


この記事にはVBAのコードが含まれています。

緑の太文字→注釈
茶色の太文字→条件分岐
赤の太文字→ループ
青の太文字→その他
記事NO.50177 のレス / END
削除チェック/

NO.50217  同じ品物の上の列と下の列に指定の数字を入れる方法は?
■投稿者/ t3ank
■投稿日/ 2005/07/15(Fri) 12:48:17
□URL/

こんにちは。

   A B C D
1  商品番号  商品名  支払の種類   金額
2   1    リンゴ 1     20,000
3   2    ミカン    3      1,000
4   3    スイカ    1     30,000
5   4    バナナ    1      5,000
6   4    バナナ    3     10,000

このような表があり、「支払の種類」の行に、
商品の金額が10000円以上の場合は1が、
10000円未満の場合は3が表示されるようにしたいのですが、
同じ商品が2つある場合のみ例外として、金額に関係なく、
上のバナナの支払い方法は1、下のバナナの支払方法は3が
表示されるようにしたいのです。
リンゴやミカンやスイカが2つになった場合も、
同様に上は1、下は3が表示されるようにしたいのですが、
「支払の種類」にはどのような式を入れたら良いのでしょうか?
宜しくお願いします。


++++++++++++++++++++
OS      ⇒Windows 98
Version⇒Excel 2000
++++++++++++++++++++
親記事
削除チェック/

NO.50219  Re[1]: 同じ品物の上の列と下の列に指定の数字を入れる方法は?
■投稿者/ t3ank
■投稿日/ 2005/07/15(Fri) 12:51:31
□URL/

すみません!上の表がかなりずれてしまいました。
正しくはこうです。

    A      B       C           D
1  商品番号   商品名   支払の種類     金額
2    1    リンゴ      1         20,000
3    2    ミカン      3          1,000
4    3    スイカ      1         30,000
5    4    バナナ      1          5,000
6    4    バナナ      3         10,000

つたない説明で申し訳ありませんが、どうぞ宜しくお願いします。
記事NO.50217 のレス /
削除チェック/

NO.50221  Re[2]: 同じ品物の上の列と下の列に指定の数字を入れる方法は?
■投稿者/ けんせらせら
■投稿日/ 2005/07/15(Fri) 13:23:08
□URL/

こんにちは

同じ品物は必ず「真上・真下」に「2つを上限として」並ぶのでしょうか?

そうであるならば
=IF(B2=B3,1,IF(B2=B1,3,IF(D2>=10000,1,IF(D2<10000,3,""))))
とすれば「ご質問に書かれてある条件」は満たすと思いますが
そうでない場合は予期せぬ結果になると思います。

記事NO.50217 のレス /
削除チェック/

NO.50222  Re[3]: 同じ品物の上の列と下の列に指定の数字を入れる方法は?
■投稿者/ Rin
■投稿日/ 2005/07/15(Fri) 13:43:41
□URL/

こんにちは〜

けんせらせらさんの
いう通りで
条件が、あいまいですネ

バナナが、3つ以上、あったり
は、ないのでしょうか?

バナナが、B2に、あったらどうすれば
いいのでしょうか?

C2: =IF(OR(COUNTIF(B2:$B$100,B2)>1,D2>=10000),1,3)

下に、コピーします・・・Rinでした〜♪♪





記事NO.50217 のレス /
削除チェック/

NO.50224  Re[4]: 同じ品物の上の列と下の列に指定の数字を入れる方法は?
■投稿者/ 白茶
■投稿日/ 2005/07/15(Fri) 13:53:14
□URL/

こんにちは

とりあえず

>同じ品物は必ず「真上・真下」
に並ばない
方向で考えてみました。

=IF((IF(COUNTIF(B:B,B2)>1,COUNTIF($B$2:B2,B2),0))=0,IF(D2>=10000,1,3),IF((IF(COUNTIF(B:B,B2)>1,COUNTIF($B$2:B2,B2),0))=1,1,3))
下へフィルコピー。

なんて、長い式になっちゃいました。

分解します。
E2=IF(D2>=10000,1,3)
F2=IF(COUNTIF(B:B,B2)>1,COUNTIF($B$2:B2,B2),0)
で、
C2=IF(F2=0,E2,IF(F2=1,1,3))


これも「2つを上限として」という制約からは抜け出していません。


駄作、いや駄策かなぁ・・・。

記事NO.50217 のレス /
削除チェック/

NO.50228  Re[5]: 同じ品物の上の列と下の列に指定の数字を入れる方法は?
■投稿者/ t3ank
■投稿日/ 2005/07/15(Fri) 15:56:54
□URL/

けんせらせらさん、Rinさん、白茶さん、迅速なご回答ありがとうございます!

説明が不足している部分があり、たいへん失礼致しました。
現在、思いつく限りで補足させていただきます。

>同じ品物は必ず「真上・真下」に「2つを上限として」並ぶのでしょうか?

はい。
同じ品物は必ず「真上・真下」に「2つを上限として」並ぶ事になります。

表を更新する際に商品の位置が変わったり消える場合があり、リンゴが無くなったり、
バナナがB2に移動したり、スイカがB4に移動する可能性はあります。

以上の点が説明不足になってしまっていたのですが(スミマセン;)、まず
けんせらせらさんの式をそのまま入れてみた所、商品の位置が変わっても、求めている
通りに1と3が表示されました!
Rinさん、白茶さんの式を、これから試してみます。
分からない点が出てしまったら、またお伺いしてしまうかもしれませんが、
取り急ぎ教えていただいた式を見て頑張ります;;

ありがとうございました!
記事NO.50217 のレス / END
削除チェック/

NO.49834  それぞれ任意のリストを表示するには
■投稿者/ 康
■投稿日/ 2005/07/06(Wed) 16:15:50
□URL/

A B C D
1 a d g l
2 b d h m
3 c e i
4 e j
5 f k
aにはB列の項目をリスト型で入力できるようにしてあり、aの項目をB列で検索、bにそれぞれに対応したC列の項目を、同様にcはD列というように
リスト形式入力出来るようにしたいと考えます。
INDIRECTではb,c,d…というように複数セルで違ったリストを出せないように感じました。
どのようにしたら良いか教えて頂けませんでしょうか。


++++++++++++++++++++
OS      ⇒Windows 2000
Version⇒Excel 2000
++++++++++++++++++++
親記事
削除チェック/

NO.49846  Re[1]: それぞれ任意のリストを表示するには
■投稿者/ q- -p
■投稿日/ 2005/07/06(Wed) 20:11:53
□URL/

こんばんは。康さん。

回答ではなくて申し訳ありません。
例示がつかみにくいので、レスがつきにくいと思われるのですね。

aというのはセルA1の事で
bがセルA2
cがセルA3
という事ですか。

だとして
>aの項目をB列で検索、bにそれぞれに対応したC列の項目を
のところが今ひとつわかりません。
B列にはd,d,d,e,e,e,f,f,fなど複数リストになっていて
C列がア,イ,ウ,エ,オ,カ,キ,ク,ケ
A1の値がeだったらA2の入力規則のリストにエ,オ,カをセットする・・・
・・なんてイメージなのでしょうか。

その辺り具体的にされれば、レスつきやすいのではないかなあ。と思います。
記事NO.49834 のレス /
削除チェック/

NO.49862  Re[2]: それぞれ任意のリストを表示するには
■投稿者/ 康
■投稿日/ 2005/07/07(Thu) 12:24:20
□URL/

ありがとうございます。確かにわかりにくいですね。

1 A d あ ア
2 B d い ア
3 C e う イ
4 e え ウ
5 f お
といった表があり、A列はそれぞれリストから選択。B,C,D…列はその参照するリストです。
A1=A(B列リスト)を入力する事によりA2=B(C列リスト)のリストが代わり、また、A3=C(d列リスト)を選択するといった事を複数回するイメージです。
INDIRECTではA,Bなら出来たのですがCを別のリストにするといった事が出来ないようです。
お分かりになる方がいましたらと思います。
記事NO.49834 のレス /
削除チェック/

NO.49870  Re[3]: それぞれ任意のリストを表示するには
■投稿者/ q- -p
■投稿日/ 2005/07/07(Thu) 12:46:44
□URL/

こんにちは。

↓こちらが参考になると思いますよ。
『縦横可変範囲の名前定義でリスト』
http://www2.odn.ne.jp/excel/waza/name.html#SEC22
サンプルファイルもダウンロードできますから、わかりやすいと思います。
記事NO.49834 のレス /
削除チェック/

NO.49942  Re[4]: それぞれ任意のリストを表示するには
■投稿者/ 康
■投稿日/ 2005/07/08(Fri) 16:06:49
□URL/

ありがとうございます。
ちょっと業務が立てこんでしまって試行する事が出来ませんが
時間出来次第試したいと思います。
記事NO.49834 のレス / END
削除チェック/

NO.50229  Re[5]: それぞれ任意のリストを表示するには
■投稿者/ 康
■投稿日/ 2005/07/15(Fri) 16:16:41
□URL/

教えて頂いた方法で解決しました。
ありがとうございます。大変助かりました。
記事NO.49834 のレス / END
削除チェック/

NO.50230  VLOOKUPで縦に参照させたい
■投稿者/ 康
■投稿日/ 2005/07/15(Fri) 16:20:03
□URL/

VLOOKUPの場合、指定した横のセルを参照すると思いますが
縦に参照させるような関数はありませんでしょうか。
データの性質上、どうしてもそういった処理が必要になってしまい、
どなたか教えて頂けませんでしょうか。
親記事
削除チェック/

NO.50231  Re[1]: VLOOKUPで縦に参照させたい
■投稿者/ k@自転
■投稿日/ 2005/07/15(Fri) 16:21:33
□URL/

こんにちは〜^^

HLOOKUPのこと?
記事NO.50230 のレス /
削除チェック/

NO.50232  残高の計算
■投稿者/ kyou
■投稿日/ 2005/07/15(Fri) 16:31:21
□URL/


こんにちは。
貸付返済表、毎月給料日に引くようにする早見表なのですが、
コードを入力してコード表から氏名を引っ張ってきて返済額を入力して
現在の残高が分かるようなものです。

   A     B     C     D
1 コード   氏名   返済額   残高
2   1   佐藤    10000     0
3   2   佐々木    5000   15000
4   5   山田    20000   100000
5   10   前田     3000   10000
6   20   遠藤     5000     0

このような表があります。
同じシートで横に続けて月別に同じ表を作っています。
次の月に残高が残る"2 佐々木 15000"、"5 山田 100000"、"10 前田 10000"
この人達のコードを入力して返済額を入力したら自動的に残高が計算されるような方法は
ありますか?
次の月にまた新たな人が貸付することもあり、順番もずれることもあるので
セルを指定することは出来ません。
何か良い方法はありますか?
よろしくおねがいします。




++++++++++++++++++++
OS      ⇒Windows 2000
Version⇒Excel 2000
++++++++++++++++++++
親記事
削除チェック/

NO.50234  Re[1]: 残高の計算
■投稿者/ ぷりたま
■投稿日/ 2005/07/15(Fri) 18:49:27
□URL/

こんばんは、ぷりたまです。
ご質問の意味が分かりません。
>同じシートで横に続けて月別に同じ表を作っています。
日本語的に意味不明です。

各月毎に
   A     B     C     D
1 コード   氏名   返済額   残高
2   
3
4
5
6

の形式の表が有るという事でしょうか?
そして提示例が6月のシートとしたときに
7月のシートには、自動的にコード1の佐藤さんと
コード20の遠藤さんを除く3名の方プラス
新たに貸し付けした人のデータのシートになっている
という事でしょうか?

毎月シート毎に記入されているメンバーが違っている。
調査用のシートが別に有って、そのシートの有るセルに
コードを入力したら隣のセルにでも、現在の残高を
表示させる関数が知りたいという事でしょうか?

親父なもので若い人の文章は良く理解できないので
もう少し説明してください。

記事NO.50232 のレス /
削除チェック/

NO.50220  EXCELの文字サイズ
■投稿者/ みかん
■投稿日/ 2005/07/15(Fri) 13:10:15
□URL/

普段から使っているEXCELのファイルがあるのですが、突然一部のセルだけフォントが大きくなって表示されるのです。
フォントサイズは13に設定されているのですが、明らかに見た目は50とかものすごく大きなサイズのように表示されるのです。
同じブックの中の別のシートも同じセル位置が同じように拡大されて表示されています。
フォントサイズを12や11など13以外のサイズに設定するときちんとサイズは変更されます。
しかし、一度サイズを変更してからファイルを開きなおすと、今度は別のセルがまた異様に大きくなって表示されてしまいます。どうすれば直るのか分かりません。

もし、お分かりの方がいらっしゃいましたら宜しくお願い致します。


++++++++++++++++++++
OS      ⇒Windows 2000
Version⇒Excel 2002
++++++++++++++++++++
親記事
削除チェック/

NO.50235  Re[1]: EXCELの文字サイズ
■投稿者/ q- -p
■投稿日/ 2005/07/15(Fri) 18:51:11
□URL/

こんばんは。みかんさん。

#(・・・レスついてない・・・)

>同じセル位置が
>今度は別のセルが
・・・なので正直言ってわかりません。

ちょっと気になるのはフォントサイズが『13』・・・(確かに今日は金曜だけど:笑)

Q1)フォントの種類(MS明朝とか)は何ですか?

Q2)さらに[ツール]→[オプション]→[全般]タブの「標準フォント」は何になってますか?

Q3)サイズは「13」でないといけないですか?(「12」で我慢できない?)

フォントサイズってドロップダウンで「13」って選べないので、
あえて入力設定しないといけないじゃないですか?(フォント種類によるのかな)

そんな事が関係してるとは思えないんですが、念のため試されてみてはどうでしょう。。。

で、だめな場合は、
てっとりばやく新しいブックにデータをコピー、値貼り付けなどして
(書式を引き継がないように)作成し直す。
など試されてもいいかもしれません。

#また難問?qT Tp
記事NO.50220 のレス /
削除チェック/

NO.50202  数値を入力すると、+10の数字になる
■投稿者/ nin
■投稿日/ 2005/07/15(Fri) 10:40:57
□URL/

もし7と入力すると、そのセルには10を足した数値(17)と表示されるようにしたいのですが。
そして、何も入力していない状態の時は、10や0などの数値表示したくないです。

宜しくお願い致します。


++++++++++++++++++++
OS      ⇒Macintosh
Version⇒Excel 98(Mac)
++++++++++++++++++++
親記事
削除チェック/

NO.50204  Re[1]: 数値を入力すると、+10の数字になる
■投稿者/ Chiquilin
■投稿日/ 2005/07/15(Fri) 10:42:45
□URL/

一般機能でやるつもりなら セルを分けて 数式で処理して下さい。
記事NO.50202 のレス /
削除チェック/

NO.50206  Re[2]: 数値を入力すると、+10の数字になる(同じセルで)
■投稿者/ nin
■投稿日/ 2005/07/15(Fri) 10:57:16
□URL/

返信ありがとうございます。
でも、どうしても同じセルでしたいのですが、
それだと、とてつもなく難しくなってしまうのですか?


++++++++++++++++++++
OS      ⇒Macintosh
Version⇒Excel 98(Mac)
++++++++++++++++++++
記事NO.50202 のレス / END
削除チェック/

NO.50210  Re[3]: 数値を入力すると、+10の数字になる(同じセルで)
■投稿者/ りすちゃん
■投稿日/ 2005/07/15(Fri) 11:19:40
□URL/

こんにちは。

基本的に、セル入力と同時に『入力セル』に計算させることは一般機能では無理だと思います。どうしても、となるとVBAであれば可能かと思いますが、

代替案として。
A列にデータが入力されているとして、(空白セルがあってもかまいません。)

C1に『10』と入力→コピー
A列のデータ範囲を選択→編集→ジャンプ→セル選択→定数にチェック→OK
→データのあるセルだけが選択されているのを確認→右クリック
→形式を選択して貼り付け→演算を『加算』にチェックして→OK

で形にはなると思います。
あとは、最初から『10』を足した状態で入力するか・・・ですよね。
記事NO.50202 のレス /
削除チェック/

NO.50209  Re[3]: 数値を入力すると、+10の数字になる(同じセルで)
■投稿者/ 000
■投稿日/ 2005/07/15(Fri) 11:11:52
□URL/

セルの書式設定→ユーザー定義→種類に「10」でどうでしょう。
記事NO.50202 のレス /
削除チェック/

NO.50212  Re[4]: 数値を入力すると、+10の数字になる(同じセルで)
■投稿者/ りすちゃん
■投稿日/ 2005/07/15(Fri) 11:24:57
□URL/

000さん、こんにちは。

>セルの書式設定→ユーザー定義→種類に「10」でどうでしょう。
なるほど、と思いましたが、
『20』といれたら『120』
『10』といれたら『110』
ですよね。
入力数値の前に『1』が付く、という。
質問では、『10』を足す とのことでしたので、↑の回答になりました。
確かに2桁の数値が入った場合はどうなのか、気にはなっていましたし。

なぜ、あえて『後から『10』を足す』なのか、疑問です。
記事NO.50202 のレス /
削除チェック/

NO.50216  Re[5]: 理由
■投稿者/ nin
■投稿日/ 2005/07/15(Fri) 11:47:03
□URL/

色々ありがとうございます。
私もユーザー定義で色々とやってみたけど駄目でした。

りすちゃんの、最後の「演算を『加算』にチェックして→OK」の項目が
ありません。HTML、テキスト、Unicodeテキストの3つしかないです。


10を足したい訳は、ある測定器(定規みたいなもので測った数値)からその数値を
直接Excelに取り込めるのですが、その数値に10足した数字が欲しいのです。
それから平均値などを求めたいので。

数値を取り込んむファイルAとその数値に10を足すファイルBを作り、
BからAを参照して、10を足すようにし、表をつくるしかないですかね・・・
記事NO.50202 のレス /
削除チェック/

NO.50218  Re[6]: 理由
■投稿者/ ni
■投稿日/ 2005/07/15(Fri) 12:48:55
□URL/

こんにちは

A列にデータが入っているとしたら、B列に
=A1+10
としておけばいいのです。

計測器からの生データと補正した事実を残しておかないと、
後で見たときに、すでに補正したものか、補正前のデータなのか、
わからなくなってしまいますよ。
記事NO.50202 のレス /
削除チェック/

NO.50237  Re[7]: 理由
■投稿者/ q- -p
■投稿日/ 2005/07/15(Fri) 20:48:31
□URL/

こんばんは。ninさん。みなさん。

>それから平均値などを求めたいので。
の『など』を除いて考えると
=AVERAGE(A:A)+10
なの?って思っちゃうけど、きっとそんな単純な話じゃないですよね。。。

>りすちゃんの、最後の「演算を『加算』にチェックして→OK」の項目が
>ありません。HTML、テキスト、Unicodeテキストの3つしかないです。
ここもうちょっと突っ込めば、お望み通りのような気がします。
セルC1のみを(実際はどこでもいい)コピーして、[形式を選択して貼り付け]って事なんですけど
~~~~~~
MACのXL98ってかなり違うのかしらん?

また、別案。
>ある測定器からその数値を直接Excelに取り込める
・・・どうやって取り込まれてますか?
もしMicrosoftQuery使って「外部データの取り込み」なら取り込む時に
『10』足したフィールドを取り込むのも一つの方法かとは思いますが。
(これもMACのXL98に機能があれば・・の話)
ある意味 りすちゃんさんの
>最初から『10』を足した状態で入力する
と同じ考え方なのでしょうけど。(作業的には楽ですよね)

はずしちゃってたらごめんなさい。
記事NO.50202 のレス /
削除チェック/

NO.50238  Re[8]: 理由
■投稿者/ 通りすがり
■投稿日/ 2005/07/15(Fri) 21:38:49
□URL/

外から・・・スイマセン

A列に入力後、A列を計算表記するのは、
循環参照になりますので、一般操作では無理です。VBAなら、可能です。~~~~~~~~~~~~~~~~
記事NO.50202 のレス /
削除チェック/

NO.50241  Re[9]: 理由
■投稿者/ クロメート
■投稿日/ 2005/07/15(Fri) 22:05:29
□URL/

御機嫌如何? クロメートです
niさんと同意見です
生データは保存しておきましょう
測定値の鉄則です

>数値を取り込んむファイルAとその数値に10を足すファイルBを作り、
>BからAを参照して、10を足すようにし、表をつくるしかないですかね・・・
でも良いと思いますがファイルを分けるのではなくシートまたはセルを
分ければよいと思います
記事NO.50202 のレス /
削除チェック/

NO.50072  条件に基づいた平均値の計算方法
■投稿者/ puyo
■投稿日/ 2005/07/13(Wed) 05:06:14
□URL/

おはようございます。いつも勉強させて頂いています。
今日は、条件に基づいた平均値の計算方法について教えて下さい。


ある範囲の中の条件に一致するセルの平均値を出したいのですが、
SUMIF 関数のような関数はないのでしょううか?

COUNTIF 関数 と組み合わせることも考えたのですが、
範囲内に空白セルがある場合の処理がうまくできません。

例えば
A B
1 ● 4
2 ● 6
3 ○ 3
4 ●
5 ● 2

A列が "●" のセルだけ B列の平均をとる場合 平均=4 なのですが
SUMIF(A1:A5,"●",B1:B5)/COUNTIF(A1:A5,"●") ではB4の空白がカウントされます。
答えは3になります。
どの関数を使えばいいのでしょうか?
よろしくお願いします。



++++++++++++++++++++
OS      ⇒Windows 98
Version⇒Excel 2000
++++++++++++++++++++
親記事
削除チェック/

NO.50073  Re[1]: 条件に基づいた平均値の計算方法
■投稿者/ けんせらせら
■投稿日/ 2005/07/13(Wed) 05:39:00
□URL/

おはようございます 
(私は こんばんは です^^;そろそろ寝ます(笑))

=SUMIF(A1:A5,"●",B1:B5)/SUMPRODUCT((A1:A5="●")*(B1:B5<>""))

でいけると思います。

記事NO.50072 のレス /
削除チェック/

NO.50074  Re[2]: 条件に基づいた平均値の計算方法
■投稿者/ Maron
■投稿日/ 2005/07/13(Wed) 06:29:16
□URL/

◆こんな方法もあります!

=AVERAGE(IF(($A$1:$A$5="●")*($B$1:$B$5<>""),$B$1:$B$5))

★この式は「配列数式」です。式を入力後、Ctrl+Shift+Enter をおして、式を確定させてください。
記事NO.50072 のレス /
削除チェック/

NO.50236  Re[3]: 条件に基づいた平均値の計算方法
■投稿者/ puyo
■投稿日/ 2005/07/15(Fri) 20:47:28
□URL/

けんせらせら さん   Maronさん

ありがとうございます。返事が大変遅くなって申し訳ありませんでした。
どちらも、うまく出来ました。
結果オーライなのですが、数式の意味が理解出来ません。
もう少し教えて下さい。

まず、=SUMIF(A1:A5,"●",B1:B5)/SUMPRODUCT((A1:A5="●")*(B1:B5<>""))
ですが、
SUMIF の方はわかるのですが、
SUMPRODUCT は、「指定した配列の対応する要素間の積を計算し、さらにその和を返す」
とあります。(A1:A5="●")*(B1:B5<>"") が指定した配列になるのでしょうか?

もうひとつの、=AVERAGE(IF(($A$1:$A$5="●")*($B$1:$B$5<>""),$B$1:$B$5))
ですが、
IF関数の書式は、IF(論理式, 真の場合, 偽の場合) とあります。
($A$1:$A$5="●")*($B$1:$B$5<>"") が論理式で、TRUE,FALSE が返るのですか?
最後に、配列として入力するのはどうしてですか?
ヘルプ や 本を読んだのですが・・・
低レベルですみません
よろしくお願いします。



++++++++++++++++++++
OS      ⇒Windows 98
Version⇒Excel 2000
++++++++++++++++++++
記事NO.50072 のレス /
削除チェック/

NO.50244  Re[4]: 条件に基づいた平均値の計算方法
■投稿者/ けんせらせら
■投稿日/ 2005/07/15(Fri) 22:54:02
□URL/

こんばんは

>低レベルですみません

全くそんなこと無いです^^
私も大したレベルでは無いので。

=SUMPRODUCT((A1:A5="●")*(B1:B5<>""))
正直これはよくある質問「複数の条件に見合う物の数を数えたい」
の「よくある回答」なのでそのまま真似しただけです^^;
(これでは説明になりませんね… アセアセ( ̄_ ̄ i)タラー)
ちょっと長くなりますがお付き合い下さい。


> (A1:A5="●")*(B1:B5<>"") が指定した配列になるのでしょうか?
そういうことになります。
試しに数式をばらしてみましょう。

ご質問の表の
C1に =A1="●"  D1に =B1<>""  E1に =C1*D1
と入力して5行目までコピーしてください。
  
  A  B    C   D   E
1 ● 4 TRUE TRUE 1
2 ● 6 TRUE TRUE 1
3 ○ 3 FALSE TRUE 0
4 ● TRUE FALSE 0
5 ● 2 TRUE TRUE 1

このようになると思います。
C列では ● かそうでないか
D列では 空白ではないか どうか
を判定しています。
(TRUEは1 FALSEは0という倫理値で代用されます)
E列ではそれぞれを掛けることで
●かつ空白でない ならば 1 (つまりTURE)
sumproductの productの機能がここで働いています
じゃあsumの部分は?
E列の 1 1 0 0 1 の数字をsumしています。
結果●かつ空白の条件は 3 という結果が出来ます。

=SUMIF(A1:A5,"●",B1:B5)/SUMPRODUCT((A1:A5="●")*(B1:B5<>""))
→A列が●の所のB列の数値の合計÷A列が●かつB列が空白ではない物の数
→12÷3
→4

と言う事になります。
お分かり頂けましたでしょうか?


Maronさんの
=AVERAGE(IF(($A$1:$A$5="●")*($B$1:$B$5<>""),$B$1:$B$5))
(配列数式として確定)

私は配列数式は全くもって苦手ですが
このくらいならば式の意味はなんとな〜〜く分かります。
しかしながらうまく説明する自信が無いので
このサイトでも達人級の回答者Chiquilinさんのサイトの中に
参考になるページがありますのでURL貼り付けておきます。
↓Chiquilin Site Excel一般機能:複数条件での合計
http://www.geocities.jp/chiquilin_site/data/050208_more_conditions.html
記事NO.50072 のレス /
削除チェック/

NO.50239  Re[4]: 条件に基づいた平均値の計算方法
■投稿者/ ぷりたま
■投稿日/ 2005/07/15(Fri) 21:57:37
□URL/

こんばんは、ぷりたまです。

助言します。
>SUMPRODUCT は、「指定した配列の対応する要素間の積を計算し、さらにその和を返す」
>とあります。(A1:A5="●")*(B1:B5<>"") が指定した配列になるのでしょうか?

SUMPRODUCTのヘルプを見ると確かにご質問の内容が書かれています。
しかし厳格にSUMPRODUCT(配列1,配列2,配列3)となっていなくても、要素間の積を
計算してしまうのがSUMPRODUCT関数の良いところなのです。
SUMPRODUCT(配列1) と配列が一つしか無くてもOKなのです。

例題の場合、式の (A1:A5="●") の部分を範囲指定して F9 を押して
下さい。  {TRUE,TRUE,FALSE,TRUE,TRUE} と表示されるはずです。
EXCELの決まり事として TRUE=1 FALSE=0 ですのでこの場合
{1,1,0,1,1} となります。

こんどは、(B1:B5<>"") の部分を範囲指定して F9 を押して下さい。
{TRUE,TRUE,TRUE,FALSE,TRUE} と表示されるはずです。
つまり、{1,1,1,0,1} となります。

この二つを、それぞれの位置で掛け合わすと {1,1,0,0,1} となります。
(A1:A5="●")*(B1:B5<>"") の部分を範囲指定して F9 を押すと
{TRUE,TRUE,FALSE,FALSE,TRUE} となっていることで分かると思います。

それを SUM 足し算するので 1+1+0+0+1 で 3となります。

次に、=AVERAGE(IF(($A$1:$A$5="●")*($B$1:$B$5<>"),$B$1:$B$5))
ですが、仰るとおり基本は IF(論理式, 真の場合, 偽の場合) です
しかし配列計算に限り、許されるのが EXCEL の特徴です。
先ほどと同様に配列数式計算では、$A$1:$A$5="●")*($B$1:$B$5<>"")
の部分は {TRUE,TRUE,FALSE,FALSE,TRUE} です。
if文で分岐していますので,TRUEなら $B$1:$B$5 に相当する位置の
データを取ります。 FALSE なら 指定が無いのでそのままFALSEを
返します。 つまり IF(($A$1:$A$5="●")*($B$1:$B$5<>"),$B$1:$B$5)
の部分を指定して F9 を押すと、{4,6,FALSE,FALSE,2} と表示され
ます。 これを AVERAGE関数で平均を求めているのですから、

4+6+0+0+2 は 12 であり FALSE は個数に数えませんから、対象
個数は 3 です よって答えは 4となるわけです。

>最後に、配列として入力するのはどうしてですか?

一つ一つのデータに対して一つ一つ評価する式を作るのでは大変です。
EXCEL は 配列の場合キチンとデータの順位(順番)通りに評価する
仕様となっていますので、それを利用しているだけです。

配列数式は一般の本にはあまり詳しく書いてありません。
net検索で「配列数式」で検索をかければ、ゾロゾロ参考になるものが
見つかるはずです。


記事NO.50072 のレス /
削除チェック/

NO.50245  Re[5]: 条件に基づいた平均値の計算方法
■投稿者/ けんせらせら
■投稿日/ 2005/07/15(Fri) 23:46:01
□URL/

こんばんは
私が回答者になるきっかけとなったぷりたまさんではないですか(^ー^* )
ご助言ありがとうございます  o(_ _)o
「目からうろこ」「脱帽」といった感じです。

しかも私よりも1時間も早く回答しているなんて…
自分であれこれ調べたり検証しながら書いていたら
Re[4]: は1時間以上もかかっての書き込みになってしまいました^^;

Re[3]: が「解決しました!」「希望通りの結果が得られました」
といった感じで終わっていたら、私も「よかったよかった^^」
だけで終わってしまっていたと思います。
私自身も苦手な「配列」に対しての理解がほんの少し深まった気がします。
きっかけを与えてくれた質問者のpuyoさんに感謝します。
記事NO.50072 のレス /
削除チェック/

NO.50246  (削除)
■投稿者/ /
■投稿日/ 2005/07/16(Sat) 01:22:23
□URL/

この記事は削除されました
記事NO.50072 のレス /
削除チェック/

NO.50247  Re[7]: (削除)
■投稿者/ けんせらせら
■投稿日/ 2005/07/16(Sat) 01:45:09
□URL/

↑上記削除しました o(_ _)o

[50244] Re[4]: 条件に基づいた平均値の計算方法
□投稿者/ けんせらせら -(2005/07/15(Fri) 22:54:02)
の内容を一部修正しました。

スレ汚し失礼しました。

記事NO.50072 のレス /
削除チェック/

NO.50248  Re[6]: 条件に基づいた平均値の計算方法
■投稿者/ puyo
■投稿日/ 2005/07/16(Sat) 04:44:31
□URL/

ぷりたま さん , けんせらせら さん

お二人共、本当に丁寧な説明でありがとうございました。
よくわかりました。 これから、いろいろ応用ができそうです。

TRUE,FALSE が、1,0 で計算されること や F9 の使い方
なども知らなかったので、大変勉強になりました。
(みなさんには、一般常識? ・・・ ですよね ^^;)

今までにも、ヘルプを読んでいると、数式の中にいきなり B1:B5<>""
のような不等号が使われていて疑問に思っていました。
そちらも納得です。

配列については、もう少し自分でも勉強してみます。
またわからないことが有ったら教えて下さい。

> 自分であれこれ調べたり検証しながら書いていたら
> Re[4]: は1時間以上もかかっての書き込みになってしまいました

お時間をとらせてしまって本当に申し訳ありませんでした。

どうもありがとうございました。m(__)m
記事NO.50072 のレス / END
削除チェック/

NO.50249  初心者です
■投稿者/ kim
■投稿日/ 2005/07/16(Sat) 08:21:16
□URL/

任意に選んだ5個の数字の和が100になるような組み合わせ数と
選んだ数字を表示する方法はないでしょうか?どなたかご教授下さい。




++++++++++++++++++++
OS      ⇒Windows 2000
Version⇒Excel 2003
++++++++++++++++++++
親記事
削除チェック/

NO.50251  Re[1]: 初心者です
■投稿者/ ich habe hunger
■投稿日/ 2005/07/16(Sat) 09:26:58
□URL/

まず、
 数字を「任意に」5個選んだら、その和は100になることは普通はありません。
 
タイトルは、質問内容を的確に表すものにしましょう。
 
自然数なら
 
1,1,1,1,96
1,1,1,2,95
1,1,1,3,94
   ・
   ・
96,1,1,1,1
 
ということですか?
記事NO.50249 のレス /
削除チェック/

NO.50253  Re[2]: 初心者です
■投稿者/ *****
■投稿日/ 2005/07/16(Sat) 09:44:42
□URL/

疑問だらけで何から無きいたらいいのか分らない位・・・

>選んだ数字を表示する方法はないでしょうか?
この場合の”選ぶ”とはどのようなアクションを差していますか?

などなど・・・全く質問内容が分かりません。

>任意に選んだ5個の数字の和が100になるような組み合わせ数と
5個の中から1〜5個を取り出す組合せ方は、31組。
全組合せを表にしてSUM。
その値が100の所を数えれば?


記事NO.50249 のレス /
削除チェック/

NO.50254  番号を入力すると名前などを取り出したい
■投稿者/ yuri
■投稿日/ 2005/07/16(Sat) 10:28:07
□URL/

はじめまして。Excelをはじめて2週間です。
超基本的なことだと思いますが教えてください。

Sheet2に
A B C
1 ID番号 名前 電話
2 1 山田太郎 12-3456
3 2 川田次郎 23-2346
4 3 谷田三郎 34-4567
5 4 斧紳二 23-4587
6 5 中村キノコ 34-5201
7 6 中田ビデ 12-0065
.
.
.
.
21 20 ぺ四順 21-5698

このようなリストがあります。

Sheet1のA2に20と打つとB2にぺ四順 C2に21-5698と出したいのです。
どうしたらいいですか?


++++++++++++++++++++
OS      ⇒Windows 2000
Version⇒Excel 2003
++++++++++++++++++++
親記事
削除チェック/

NO.50255  Re[1]: 番号を入力すると名前などを取り出したい
■投稿者/ ich habe hunger
■投稿日/ 2005/07/16(Sat) 10:32:05
□URL/

VLOOKUP関数を調べましょう。
記事NO.50254 のレス /
削除チェック/

NO.50256  Re[2]: 番号を入力すると名前などを取り出したい
■投稿者/ ぷりたま
■投稿日/ 2005/07/16(Sat) 16:55:01
□URL/

こんばんは、ぷりたまです。

リストの大きさがわかりませんが
B2=VLOOKUP(A2,SHEET2!A2:C50,2)
C2=VLOOKUP(A2,SHEET2!A2:C50,3)

または
B2=VLOOKUP(A2,SHEET2!A2:C50,COLUMN())
で左にC列までフィルコピー
 下にフィルコピー



記事NO.50254 のレス /
削除チェック/

NO.50226  X軸を境に上下に違うデータのグラフ
■投稿者/ yumi
■投稿日/ 2005/07/15(Fri) 14:34:44
□URL/

こんにちは
早速ですがグラフについて教えてください。

X軸に年度をY軸のプラス側に個数、マイナス側に金額という、
一つのグラフで、X軸を境にして、二つのデータを表示することは
可能でしょうか?

一つずつグラフを作って、イメージデータで貼り付けようとしたのですが、
下に来る金額のX軸が逆になってしまうのでできませんでした。

どなたかよい方法をご存知でしたら教えていただけないでしょうか?

親記事
削除チェック/

NO.50233  Re[1]: X軸を境に上下に違うデータのグラフ
■投稿者/ Nの喜劇
■投稿日/ 2005/07/15(Fri) 18:12:33
□URL/

データの金額をマイナスにします。
グラフを積み上げ棒グラフにします。
プラス側に個数、マイナス側に金額になっていると思います。

Y軸を右クリックして[軸の書式設定]をクリック。

[パターン]タブの[目盛ラベル]を[上端/右端]又は[下端/左端]を選択。

[表示形式]タブの[分類]で[ユーザー定義]、[種類]を[##0;##0]等のマイナスを表示しない形式にする。

これで、Y軸とX軸の表示ができます。
次に棒グラフで右クリック。

[データ系列の書式設定]の[オプション]タブの[棒の重なり]を[100]、[棒の間隔]を適宜に設定。

これでX軸を境に上下に表示されます。
なお、棒の重なりは100としましたが好みで設定して下さい。
記事NO.50226 のレス /
削除チェック/

NO.50262  Re[2]: X軸を境に上下に違うデータのグラフ
■投稿者/ yumi
■投稿日/ 2005/07/16(Sat) 19:13:37
□URL/

Nの喜劇様

ありがとうございます。
教えていただいた方法で出来ました。

金額をマイナスにすることは考えたのですが、
マイナスを表示しない方法を思いつかず・・・助かりました。

本当にありがとうございました。
記事NO.50226 のレス / END
削除チェック/

NO.50269  第何週か表示させる
■投稿者/ おとチン
■投稿日/ 2005/07/17(Sun) 07:12:57
□URL/

申し訳ありません。
教えてください。
A1に日付を入力した時、C1に「○月第○週」と表示させたいのですが、どうしたら言いのでしょうか。


++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2002
++++++++++++++++++++
親記事
削除チェック/

NO.50270  Re[1]: 第何週か表示させる
■投稿者/ Maron
■投稿日/ 2005/07/17(Sun) 08:37:01
□URL/

おとチンさん、おはようございます!

◆C1に
=MONTH(A1)&"月第"&ROUNDUP(DAY(A1)/7,0)+IF(WEEKDAY(A1)<WEEKDAY(DATE(YEAR(A1),MONTH(A1),1)),1,0)&"週"

◆いかがでしょうか!
記事NO.50269 のレス /
削除チェック/

NO.50271  Re[2]: 第何週か表示させる
■投稿者/ おとチン
■投稿日/ 2005/07/17(Sun) 08:46:09
□URL/

maronさんおはようございます!!
どうも有り難うございます。解決いたしました。 エクセルの勉強始めたばっかりなので頭を抱えてました。 早く皆さんのようなエクセル使いになれるようがんばります。 またよろしくお願いいたします。


++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2002
++++++++++++++++++++
記事NO.50269 のレス / END
削除チェック/

NO.50108  ●質問者の方へ。お願いがあります。
■投稿者/ q- -p
■投稿日/ 2005/07/13(Wed) 12:46:46
□URL/

●投稿される時は、【Name】の再確認をお願い致します。

せめて、一つの質問(トピック・スレッド)が終了するまでは、
同一の Name を使ってください。
回答者を始めとして、読んでる側からしてみるとq? ?pです。

最近、特にそのようなスレッドが多いように感じられます。
こういった事は「使用方法」にも書いてないくらい『基本的な事』だと思います。
宜しくお願い致します。

#俗にハンドルネームやペンネームって言われますけど、
#これも人格を表すひとつですよね。愛着ってないものなのかなあ。。。
#ボクは個人的には固定のハンドルで質問を続けられる方のほうが好感持てますね。
#過去質問の傾向や習熟度なども、ある程度読み取れるので回答の仕方の参考にもなりますし。
親記事
削除チェック/

NO.50112  Re[1]: ●質問者の方へ。お願いがあります。
■投稿者/ 青空
■投稿日/ 2005/07/13(Wed) 13:25:58
□URL/

はい わかりました。
(と言っても、僕は固定ですが・・・。)
今後ともよろしくお願いいたします。



++++++++++++++++++++
OS      ⇒Windows 98
Version⇒Excel 2000
++++++++++++++++++++
記事NO.50108 のレス /
削除チェック/

NO.50123  Re[2]: ●質問者の方へ。お願いがあります。
■投稿者/ q- -p
■投稿日/ 2005/07/13(Wed) 15:02:04
□URL/

こんにちは。青空さん。
お返事が頂けるような内容ではないと思っていたので
思いがけず、感謝です。ありがとうございます。
こちらこそ、よろしくお願いいたします。
記事NO.50108 のレス /
削除チェック/

NO.50168  Re[3]: ●質問者の方へ。お願いがあります。
■投稿者/ q- -p
■投稿日/ 2005/07/14(Thu) 13:01:18
□URL/

お願いとは関係ないですが、
『この掲示板の編集、削除のやり方がわからない』方がいらっしゃるとの事で。

この板の「使用方法」に
>削除キーを覚えておくと、自分の記事の編集・削除ができます。(親記事は削除不可です。)
とあるように、

1)書き込む時に最下段の[削除キー]に入力する。覚えておく。
(パスワードみたいなもんです)

2)[送信]の後、読み返してみて(こりゃキツい言い方かなー)なんて後悔された方。

3)修正したい自分の書込みの題名の横の○をチェックする。
例:[50123] Re[2]: ●質問者の方へ。お願いがあります。-○ '←ココ

4)新規レス書込み欄のすぐ上あたりに

>チェック記事を[編集▼] 削除キー/[ ] [送信]
ってあるので(1)で覚えておいたキーを入力して[送信]すると編集できます。

でも、関連レスがついたら、話がつながらなくなる可能性もあるので
編集、削除は控えた方がいいかもです。



・・・なんて、なにげにageてみましたm(_ _)m
記事NO.50108 のレス /
削除チェック/

NO.50278  Re[4]: ●質問者の方へ。お願いがあります。
■投稿者/ q- -p
■投稿日/ 2005/07/17(Sun) 18:57:01
□URL/

さて、そろそろ締めようと思います。

もともと
>【Name】の再確認
と書かせてもらったように、故意にNameを変えてるつもりがない方でも、
Cookie受容を許可しているブラウザだと、前回投稿時のNameを自動的に引き継いじゃう
・・という事もあるので、投稿前に再確認をお願いしたかったのですね。

そして、もし、初心者の方の中に、NET上では特別なマナーみたいなものがあって、(ネチケットとか)
初心者にとっては難しい・・なんて印象を持たせてしまったら、ごめんなさい。
そんな事はありません。
普通に会って会話を交したり、お手紙をやり取りしたりする時と同じ事に気をつけてもらえばいいだけです。

いずれにしても、真意は
NET上のコミュニケーションって言っても
日常生活と同じような「気くばり」や「思いやり」を持っていて欲しい。
それだけです。

ちょっとイレギュラーなスレッドになってしまいましたが、
荒れる事なく、たくさんの方にご覧頂いて誠に感謝しております。ありがとうございました。
質問者の皆様、回答者の皆様、閲覧者の皆様、(管理人様)、今後とも宜しくお願い致します。
記事NO.50108 のレス / END
削除チェック/

NO.50297  画像の表示
■投稿者/ もっきん
■投稿日/ 2005/07/18(Mon) 09:59:36
□URL/

A1セルとA2セルが同じなら”OK”を表示させる方法を以前
こちらで教えていただきました。[=IF(A1=A2,"OK","")]
こんどは画像ファイルを表示させたいのですが、どのように
したらよいでしょうか


++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 97
++++++++++++++++++++
親記事
削除チェック/

NO.50298  Re[1]: 画像の表示
■投稿者/ クロメート
■投稿日/ 2005/07/18(Mon) 10:57:38
□URL/

基本的に無理とお考えください
印刷時画質が落ちる
サイズが大きくなる
図の挿入が面倒である

〜〜A3セルに画像を表示するとします〜〜
・A4セルに挿入したい画像をはめ込みます([Alt]キーを使うと良いでしょう)
・5行目を非表示にします
・[Ctrl]+[F3]名前の定義
 桜 : =IF($A$1=$A$2,$A$4,$A$5)
・A4セルをコピー
・A3セルを選択して[Shift]押しつつ"編集"-図の貼り付け
・挿入した図の数式バーに =桜
記事NO.50297 のレス /
削除チェック/

NO.50242  セル値の頭だけを集計する方法
■投稿者/ josh
■投稿日/ 2005/07/15(Fri) 22:28:47
□URL/

複数シートで計算した結果を、分析シートに表示させています。
分析シートには、各行の頭がばらばらになっています。
J5 H6 I7のように、各セルのトップにきたものだけを、
ピックアップして平均を出したいのですが、どうすればいいでしょうか。


++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2002
++++++++++++++++++++
親記事
削除チェック/

NO.50250  Re[1]: セル値の頭だけを集計する方法
■投稿者/ ぷりたま
■投稿日/ 2005/07/16(Sat) 09:02:30
□URL/

おはようございます。 ぷりたまです。

作業列を使う方法しか思いつかなかった δ(^^;)

  A  B  C  D  E  F  G  H  I
1 10 12 9 10
2 3 1 6 3
3 12 3 8 12
4 8.333333333

A1〜G3までが分析シートとして
I1=INDEX(A2:G2,,(SMALL(IF(ISNUMBER(A2:G2),COLUMN(A1:G1)),1)))

I3までフィルコピー

I4=AVERAGE(I1:I3)

と言うのでは駄目ですか?
記事NO.50242 のレス /
削除チェック/

NO.50252  (削除)
■投稿者/ /
■投稿日/ 2005/07/16(Sat) 09:37:03
□URL/

この記事は削除されました
記事NO.50242 のレス /
削除チェック/

NO.50257  Re[3]: (削除)
■投稿者/ josh
■投稿日/ 2005/07/16(Sat) 17:52:38
□URL/

ぷりたま様ありがとうございます。
私の説明が悪かったのだと思いますが、上図でいきますと、行の先頭に来ている、9、6、8を見つけ出して、平均を取って欲しいんです。
そして仮にG1に、10が入ったら、10、6、8を見つけて平均を出して欲しいんです。
常に行の先頭に来ているセル値だけを探し出して欲しいんです。
こんなことって出来るんでしょうか?


++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2002
++++++++++++++++++++
記事NO.50242 のレス / END
削除チェック/

NO.50258  Re[4]: (削除)
■投稿者/ josh
■投稿日/ 2005/07/16(Sat) 17:55:57
□URL/

間違えました。
まだ解決してないんです。

ご教授くださいませ。


++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2002
++++++++++++++++++++
記事NO.50242 のレス / END
削除チェック/

NO.50259  Re[5]: (削除)
■投稿者/ josh
■投稿日/ 2005/07/16(Sat) 18:00:21
□URL/

アイコンを何も付けなくていいんですね。
すみません。


++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2002
++++++++++++++++++++
記事NO.50242 のレス /
削除チェック/

NO.50260  Re[6]: (削除)
■投稿者/ しげちゃん
■投稿日/ 2005/07/16(Sat) 18:35:45
□URL/

ぷりたまさんの表をお借りして

A1〜G3までが分析シートとして
I1=LOOKUP(MAX(A1:G1)+1,A1:G1)

I3までフィルコピー

I4=AVERAGE(I1:I3)
記事NO.50242 のレス /
削除チェック/

NO.50261  Re[7]: (削除)
■投稿者/ josh
■投稿日/ 2005/07/16(Sat) 18:54:01
□URL/

しげちゃん様、ありがとうございます。
上記の関数を入れましたら、0が出るんです。
もしかして、各分析シートのセルには、以下のような数式を入れているのですが、
それが影響しているのでしょうか。かなり前に作ったので、覚えていないのですが、確か空白セルにエラーを入れないように、していたと思うんですが、、、

=IF(ISERROR(DATEDIF('1-5'!$A$3,'1-5'!$A$5,"d")),"",DATEDIF('1-5'!$A$3,'1-5'!$A$5,"d"))

何かアドバイスがあるでしょうか?


++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2002
++++++++++++++++++++
記事NO.50242 のレス /
削除チェック/

NO.50263  Re[8]: (削除)
■投稿者/ しげちゃん
■投稿日/ 2005/07/16(Sat) 23:06:57
□URL/

>確か空白セルにエラーを入れないように、していたと思うんですが、、、
エラー処理を、エラーの場合0にして書式で空白に見せていませんか?


I1=INDEX(A1:H1,MAX(INDEX((A1:H1<>0)*COLUMN(A1:H1),)))

または
I1=INDEX(A1:H1,MAX((A1:H1<>0)*COLUMN(A1:H1)))
配列数式です。

に代えてください
記事NO.50242 のレス /
削除チェック/

NO.50264  Re[9]: (削除)
■投稿者/ josh
■投稿日/ 2005/07/16(Sat) 23:41:54
□URL/

しげちゃん様、ありがとうございます。
>エラー処理を、エラーの場合0にして書式で空白に見せていませんか?
「エラーがあったら、空白が入る」だと思っていました。

ところでせっかく教えていただいた式ですが、入れてみると、
I1=INDEX(A1:H1,MAX(INDEX((A1:H1<>0)*COLUMN(A1:H1),)))を入れると、値は0に、I1=INDEX(A1:H1,MAX((A1:H1<>0)*COLUMN(A1:H1)))は、VALUEになりました。

またご指導お願いします。
記事NO.50242 のレス /
削除チェック/

NO.50265  Re[10]: (削除)
■投稿者/ しげちゃん
■投稿日/ 2005/07/16(Sat) 23:56:55
□URL/

下記の式にしてみてください
I1=INDEX(A1:H1,MAX(INDEX((A1:H1<>"")*COLUMN(A1:H1),)))*1
記事NO.50242 のレス /
削除チェック/

NO.50266  Re[11]: (削除)
■投稿者/ josh
■投稿日/ 2005/07/17(Sun) 00:07:05
□URL/

しげちゃん様、ありがとうございます。
早速試したのですが、#REF!になってしまいます。



++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2002
++++++++++++++++++++
記事NO.50242 のレス /
削除チェック/

NO.50267  Re[12]: (削除)
■投稿者/ ぷりたま
■投稿日/ 2005/07/17(Sun) 03:50:37
□URL/

?? #REF! ??

#REF! は数式中のセル参照が無効なときに表示されます。

分析シートの範囲はどうなっているのですか?
また、分析シートの範囲内で非表示になっている列など
有りませんか? その非表示になっている列が全て #REF! を
表示している何て事は無いのでしょうか?

I1セルに
=IF(COUNT(A1:H1),LOOKUP(10^17,A1:H1),)

ではどうなりますか?


記事NO.50242 のレス /
削除チェック/

NO.50268  Re[13]: (削除)
■投稿者/ しげちゃん
■投稿日/ 2005/07/17(Sun) 06:50:41
□URL/

質問は
>複数シートで計算した結果を、分析シートに表示させています。
>分析シートには、各行の頭がばらばらになっています。
>J5 H6 I7のように、各セルのトップにきたものだけを、
>ピックアップして平均を出したいのですが、どうすればいいでしょうか。



回答は
ぷりたま さんの回答-(2005/07/16(Sat) 09:02:30)

>作業列を使う方法しか思いつかなかった δ(^^;)

>  A  B  C  D  E  F  G  H  I
>1 10 12 9
>2 3 1 6
>3 12 3 8
>4

>A1〜G3までが分析シートとして
>I1=INDEX(A2:G2,,(SMALL(IF(ISNUMBER(A2:G2),COLUMN(A1:G1)),1)))
>I3までフィルコピー


私の回答も、ぷりたまさんが提示した表を元にしています。

あなたが試したのは、ぷりたまさんが提示した表を作成して試したのでしょうか
それとも、実際の表にあてはめたのでしょうか

実際の表にあてはめた場合には、あなたが式を変更していると思います。
変更した式に疑義がありますので、データの範囲と、その式を提示ください。

記事NO.50242 のレス /
削除チェック/

NO.50272  Re[14]: (削除)
■投稿者/ josh
■投稿日/ 2005/07/17(Sun) 09:18:24
□URL/

しげちゃん様、ぷりたま様、ありがとうございます。
=IF(COUNT(A1:H1),LOOKUP(10^17,A1:H1),)の式は、0となりました。
範囲は、B5:O5、B42:O42までです。
B5:O5まで、=IF(ISERROR(DATEDIF('1-5'!$A$3,'1-5'!$A$5,"d")),"",DATEDIF('1-5'!$A$3,'1-5'!$A$5,"d"))という式が入っており、現在はJ5まで数値が入っております。P5には、=(SUM(B5:O5))/(COUNT('1-5'!A3:A31)-1)が入っており、各行の平均を取っております。今回、私が出したいのは、各行の先頭に来た数値(最新のデーターのみ)の平均を出したいのです。
ぷりたま様のように図表が書けなかったので、今のような記述でいいでしょうか。

尚、非表示にしているということはないと思うのですが、P5に入っている各行の平均は求まりますので、、、

またアドバイスお願いいたします。


++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2002
++++++++++++++++++++
記事NO.50242 のレス /
削除チェック/

NO.50274  Re[15]: (削除)
■投稿者/ Maron
■投稿日/ 2005/07/17(Sun) 11:17:20
□URL/

joshさん、おはようございます!

◆とりあえず、Q5に式を
Q5=IF(P5=0,"",INDEX(A5:O5,,(MAX(IF(ISNUMBER(B5:O5)*(B5:O5<>0),COLUMN(B5:O5))))))

◆これで、5行目の一番右にある数字が表示されているはずです。

◆「配列数式」ですので、Ctrl+Shift+Enter を押して式を確定させてください。

◆あとは、この数字の平均を計算してください。

◆いかがでしょうか!
記事NO.50242 のレス /
削除チェック/

NO.50273  Re[15]: (削除)
■投稿者/ ぷりたま
■投稿日/ 2005/07/17(Sun) 10:37:37
□URL/

質問です。
私の =IF(COUNT(A1:H1),LOOKUP(10^17,A1:H1),) の式は
どのセルに入れましたか?
まさか、そのまま I1 のセルに入れていませんか?
そして、範囲である A1:H1 についても そのままでは
無いのでしょうか?

>=IF(COUNT(A1:H1),LOOKUP(10^17,A1:H1),)の式は、0となりました。

ということは、式の示す範囲内には数値が一つも無いという事です。

提示式は答えでは有りません。 提示式を参考にして
最低限数式の範囲や式を入れる場所くらいは直して戴かなければ
なりません。  そのことはご存じですよね。

では、Q5セルに 
=IF(COUNT(B5:O5),LOOKUP(10^17,B5:O5),)
を入れてください。  J5セルの数値が表示しませんか?

OKなら Q42セルまでフィルハンドルで下にドラッグしてください。
それぞれの行の一番右側のセルの数値が表示されるはずです。

Q43セルに =AVERAGE(Q5:Q42) と入力して下さい
この数字が
>各行の先頭に来た数値(最新のデーターのみ)の平均
です。

最後に”各行の先頭”という表現は誤解します。

日本語では、横書きの場合一番左にある文字が、文の先頭を言いませんか?
EXCELでも先頭言ったら、一番左のセルと思っているのは、私だけ?

今後は誤解をさけるために、一番右側のセルとか左側のセル という表現に
してください。
記事NO.50242 のレス /
削除チェック/

NO.50275  Re[16]: (削除)
■投稿者/ しげちゃん
■投稿日/ 2005/07/17(Sun) 16:26:43
□URL/

>実際の表にあてはめた場合には、あなたが式を変更していると思います。
>変更した式に疑義がありますので、データの範囲と、その式を提示ください。
に対する返事(実際にあなたが入力した式の提示)がありませんので、
これで最後の回答とします。。

なぜこのような回答をするかというと
I1=INDEX(A1:H1,MAX(INDEX((A1:H1<>0)*COLUMN(A1:H1),)))・・・・0
I1=INDEX(A1:H1,MAX(INDEX((A1:H1<>"")*COLUMN(A1:H1),)))*1・・・・#REF!
という結果になることが、信じられないからです


>B5:O5まで、=IF(ISERROR(DATEDIF('1-5'!$A$3,'1-5'!$A$5,"d")),"",DATEDIF('1-
>5'!$A$3,'1-5'!$A$5,"d"))という式が入っており、現在はJ5まで数値が入ってお
>ります。P5には、=(SUM(B5:O5))/(COUNT('1-5'!A3:A31)-1)が入っており、各行の
>平均を取っております。
この回答からわかること

P5に =AVERAGE(B5:O5)とせずに、=(SUM(B5:O5))/(COUNT('1-5'!A3:A31)-1)

AVERAGEで平均が出ないわけは、「COUNT('1-5'!A3:A31」で数値が入力されている
セル数を数えていることでわかるように「A3:A31」に未入力または文字が入っている(たぶん未入力だと思います。)

その結果DATEDIF関数の結果J5以降に0が出るためと思われます。


ほかの回答者のため、参考までに下記の結果も記載頂ければと思います。
=COUNT(B5:O5)
=COUNTA(B5:O5)
=LOOKUP(10^17,B5:O5)
記事NO.50242 のレス /
削除チェック/

NO.50276  Re[17]: (削除)
■投稿者/ しげちゃん
■投稿日/ 2005/07/17(Sun) 17:01:17
□URL/

最後といいながら、・・・・
つまずきの原因がわかっていて回答しないのも失礼ですので

I1=INDEX(A1:H1,MAX(INDEX((A1:H1<>0)*COLUMN(A1:H1),)))・・・・0
の式を変更して
=INDEX(B5:O5,MAX(INDEX((B5:O5<>0)*COLUMN(B5:O5),)))
としませんでしたか?

=INDEX(B5:O5,MAX(INDEX((B5:O5<>0)*COLUMN(A5:N5),)))
または
=INDEX(5:5,MAX(INDEX((B5:O5<>0)*COLUMN(B5:O5),)))

COLUMN関数の使われ型が理解できていないようですので


I1=INDEX(A1:H1,MAX(INDEX((A1:H1<>"")*COLUMN(A1:H1),)))*1・・・・#REF!
という結果になることが、信じられないからです
記事NO.50242 のレス /
削除チェック/

NO.50277  Re[18]: (削除)
■投稿者/ josh
■投稿日/ 2005/07/17(Sun) 18:32:55
□URL/

しげちゃん様、ありがとうございます。
おっしゃるとおりです。

これまで教えていただいた式の
A1:H1のところをすべてB5:O5に置き換えて考えていました。
もちろん、INDEXもCOLUMNも全然、分かっていません。
尚、私の現在作成しているものも、いろいろ本などで調べて作ったので、
基本もあまり分かっていないとお考えください。

今日も仕事が立て込んでいて、朝も慌てて、返信しておりました。
これからまた出張で明日まで帰りません。

せっかく、教えていただいているのに、失礼とは存じますが、
どうぞお許しください。

できれば正しい仕方をまたお教えください。
よろしくお願いいたします。


++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2002
++++++++++++++++++++
記事NO.50242 のレス /
削除チェック/

NO.50281  Re[19]: (削除)
■投稿者/ josh
■投稿日/ 2005/07/17(Sun) 19:06:29
□URL/

Maron様、ありがとうございます。

Q5には項目が入っていますので、
AH5=IF(P5=0,"",INDEX(A5:O5,,(MAX(IF(ISNUMBER(B5:O5)*(B5:O5<>0),COLUMN(B5:O5))))))
を入れてみましたが、#VALUEとなってしまいました。

皆様、本当にありがとうございます。
前述のように今から出張で帰りが明日になります。

皆様のお時間を取っておきながら恐縮ですが、
よろしくお願いいたします。


++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2002
++++++++++++++++++++
記事NO.50242 のレス /
削除チェック/

NO.50280  Re[19]: (削除)
■投稿者/ josh
■投稿日/ 2005/07/17(Sun) 19:01:49
□URL/

しげちゃん様、ありがとうございます。
=COUNT(B5:O5)は13が値になります。
=COUNTA(B5:O5)は14になります。
=LOOKUP(10^17,B5:O5)は0になります。

どうぞよろしくお願いします。




++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2002
++++++++++++++++++++
記事NO.50242 のレス /
削除チェック/

NO.50279  Re[19]: (削除)
■投稿者/ josh
■投稿日/ 2005/07/17(Sun) 18:58:08
□URL/

ぷりたま様、ありがとうございます。

確かに日本語おかしいですね。
一番、右のセルに入っている最新のデーターを意味します。
実は、Q5は別の項目になっているので、その行の空いているセル(AH5)に
ご指摘の数式
=IF(COUNT(B5:O5),LOOKUP(10^17,B5:O5),)
を入れてみましたが、値は0になってしまいます。

よろしくお願いします。
前後したレスですみません。


++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2002
++++++++++++++++++++
記事NO.50242 のレス /
削除チェック/

NO.50282  Re[20]: (削除)
■投稿者/ josh
■投稿日/ 2005/07/17(Sun) 19:21:19
□URL/

しげちゃん様、ありがとうございます。

後手後手の回答になっておりますが、
>実際の表にあてはめた場合には、あなたが式を変更していると思います。
>変更した式に疑義がありますので、データの範囲と、その式を提示ください。

ご指摘 I1=INDEX(A1:H1,MAX(INDEX((A1:H1<>0)*COLUMN(A1:H1),)))
実際  AH5=INDEX(B5:O5,MAX(INDEX((B5:O5<>0)*COLUMN(B5:O5),)))
としていました。

>AVERAGEで平均が出ないわけは、「COUNT('1-5'!A3:A31」で数値が入力されてい>るセル数を数えていることでわかるように「A3:A31」に未入力または文字が入っ>ている(たぶん未入力だと思います。)
まさしくそのとおりです。未入力の部分は、データーが分かり次第、随時入れていき、なおかつその順序は一定ではないため、現行のページの各行のセルの最新が均一の列に配列されません。なので、各行の平均を出しながら、なおかつ最新のデーターの平均を取るのに苦心しており、お尋ねしているしだいです。

私のほうも皆様のお時間を無駄に使いたくないので、できるだけ必要な情報を出したいと思っているのですが、どこが関係していてどこが関係していないのか分からず、本当に申し訳なく思っております。

どうか引き続き、お知恵をお貸しください。




++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2002
++++++++++++++++++++
記事NO.50242 のレス /
削除チェック/

NO.50284  Re[21]: (削除)
■投稿者/ しげちゃん
■投稿日/ 2005/07/17(Sun) 20:12:03
□URL/

>Maron様、ありがとうございます。
>Q5には項目が入っていますので、
>AH5=IF(P5=0,"",INDEX(A5:O5,,(MAX(IF(ISNUMBER(B5:O5)*(B5:O5<>0),COLUMN(B5:O5))))))
>を入れてみましたが、#VALUEとなってしまいました。
#VALUEが出る原因は
私の回答の中にも「配列数式」との記載のある回答がありましたが、そのときも、#VALUEでしたね
配列数式は、数式を入力後 CtrlキーとShiftキーを押しながら Enterで確定します。



>=INDEX(B5:O5,MAX(INDEX((B5:O5<>0)*COLUMN(A5:N5),)))
>または
>=INDEX(5:5,MAX(INDEX((B5:O5<>0)*COLUMN(B5:O5),)))
に付いては試されたのでしょうか?


>=COUNT(B5:O5)は13が値になります。
>=COUNTA(B5:O5)は14になります。
が少し気になります。
=TYPE(B5)
=TYPE(C5)


=TYPE(O5)
の結果として2になるセル番地はどこでしょう、またそのセルの値は
(TYPE関数の結果が1の場合は数値、2の場合は文字)
記事NO.50242 のレス /
削除チェック/

NO.50283  Re[21]: (削除)
■投稿者/ Maron
■投稿日/ 2005/07/17(Sun) 19:53:35
□URL/

joshさん、こんばんは!

>AH5=IF(P5=0,"",INDEX(A5:O5,,(MAX(IF(ISNUMBER(B5:O5)*(B5:O5<>0),COLUMN(B5:O5))))))
>を入れてみましたが、#VALUEとなってしまいました。

◆#VALUEになりますよ!それでいいのです!
◆この式は「配列数式」なので、AH5を、ダブルクリックしてから、Ctrl+Shift を押しながら Enter をクリックしてください。5行目のB5:O5の間の一番右のデータが表示されるはずですが!

◆もう一度試してください、いかがでしょうか!
記事NO.50242 のレス /
削除チェック/

NO.50288  (削除)
■投稿者/ /
■投稿日/ 2005/07/17(Sun) 22:08:08
□URL/

この記事は削除されました
記事NO.50242 のレス /
削除チェック/

NO.50285  Re[22]: (削除)
■投稿者/ Maron
■投稿日/ 2005/07/17(Sun) 21:06:05
□URL/

>=IF(ISERROR(DATEDIF('1-5'!$A$3,'1-5'!$A$5,"d")),"",DATEDIF('1-5'!$A$3,'1-5'!$A$5,"d"))

◆上の式から、複数シートの一つである、シート1-5は、こんな感じかな?

   A
1
2
3  4/10
4
5  4/12
6
7  6/8
8
9  6/18
10
11  7/2
12


31

◆そして、分析シートのB5には、
>=IF(ISERROR(DATEDIF('1-5'!$A$3,'1-5'!$A$5,"d")),"",DATEDIF('1-5'!$A$3,'1-5'!$A$5,"d"))
◆なので、たぶんC5の式は、
=IF(ISERROR(DATEDIF('1-5'!$A$5,'1-5'!$A$7,"d")),"",DATEDIF('1-5'!$A$5,'1-5'!$A$7,"d"))  なのでしょう!
◆そうすると、例えば、シート'1-5'!$A$9 までにデータが入力されているとしますと、分析シートの、D5 までに、数字が表示され、E5 が、空白("")、F5〜O5までは、0 になります。
◆空白だという回答が、ありましたので、表示形式で、0 を非表示にされていますね!

◎この状態で、
>ご指摘 I1=INDEX(A1:H1,MAX(INDEX((A1:H1<>0)*COLUMN(A1:H1),)))
>実際  AH5=INDEX(B5:O5,MAX(INDEX((B5:O5<>0)*COLUMN(B5:O5),)))
>としていました。
◆とすると、
=IF(COUNT(B5:O5),LOOKUP(10^17,B5:O5),) は、0 に
=INDEX(B5:O5,MAX(INDEX((B5:O5<>"")*COLUMN(B5:O5),)))*1 は、#REF! に
◆そして、
=COUNT(B5:O5) も、13 に
=COUNTA(B5:O5) も、14 に
=LOOKUP(10^17,B5:O5) は、0 に
◆すべて、joshさんの、いままでの結果のとおりになります!

◆そこで、joshさん、分析シートのAH5に
=IF(P5=0,"",INDEX(A5:O5,,(MAX(IF(ISNUMBER(B5:O5)*(B5:O5<>0),COLUMN(B5:O5))))))
◆を入力し、Ctrl+Shift を押しながら Enter をクリックしてください。
◆また、すでに式を入力してあるのなら、AH5を、ダブルクリックしてから、Ctrl+Shift を押しながら Enter をクリックしてください。

◆きっと、5行目の、B5〜O5までの間の一番右のデータが表示されるはずです。

◆いかがでしょうか!




記事NO.50242 のレス /
削除チェック/

NO.50286  Re[23]: (削除)
■投稿者/ しげちゃん
■投稿日/ 2005/07/17(Sun) 21:43:36
□URL/

Maron さんの回答の通りだと思います。-(2005/07/17(Sun) 21:06:05)

Maron さんの回答
>=IF(P5=0,"",INDEX(A5:O5,,(MAX(IF(ISNUMBER(B5:O5)*(B5:O5<>0),COLUMN(B5:O5))))))

=INDEX(A5:O5,MAX(IF(ISNUMBER(B5:O5)*(B5:O5<>0),COLUMN(B5:O5)))
だけで良いですね

P5=0 はありえないと思いますので(この質問の場合P5の値は0以外の数値または#DIV/0!)


私の回答
>=INDEX(B5:O5,MAX(INDEX((B5:O5<>0)*COLUMN(A5:N5),)))
>または
>=INDEX(5:5,MAX(INDEX((B5:O5<>0)*COLUMN(B5:O5),)))

=INDEX(B5:O5,MAX(INDEX((B5:O5<>0)*(B5:O5<>"")*COLUMN(A5:N5),)))
または
=INDEX(5:5,MAX(INDEX((B5:O5<>0)*(B5:O5<>"")*COLUMN(B5:O5),)))
に訂正します。
記事NO.50242 のレス /
削除チェック/

NO.50287  Re[24]: (削除)
■投稿者/ Maron
■投稿日/ 2005/07/17(Sun) 22:03:09
□URL/

しげちゃん さん、ありがとうございます!

>P5=0 はありえないと思いますので(この質問の場合P5の値は0以外の数値または#DIV/0!)

◆データを再現してみたのですが、元のデータである複数データの該当データが全く未入力の場合(そのようなケースがあるかどうかは、わかりませんが?)には、分析シートのB列からO列が、0 になり、よってP列も 0 となるため、平均の式に影響するのではと思いそのようにしました。

◆はやく、joshさんが、解決されるといいですね!
記事NO.50242 のレス /
削除チェック/

NO.50289  Re[25]: (削除)
■投稿者/ ぷりたま
■投稿日/ 2005/07/17(Sun) 22:14:45
□URL/

全体像をはっきり説明してもらえないのでは、
何処まで行っても平行線ですね。

私の式で 答えが 0になるのは,B5〜O5の範囲に 0が
有るからでしょう。。。

B5〜O5までのセルの表示されている中身を書いてください。

A B C D E F G H I J K L M N O
1
2
3
4
5 0 0 0 0 0 0 12 0 0 0
6 0 0 0 0 0 0 10 0 0 0 0
7 0 0 0 0 0 11 0 0 0 0 0

DATEDIFがエラーとなる条件
DATEDIF(開始日,終了日,単位)とした時に
終了日のデータがない       #NUM! 
開始日と終了日の日付が逆転    #NUM!
日付でなく文字が入力されている  #VALUE! ぐらいと思います。
開始日=終了日 の場合は 0となります。
つまり 開始日も終了日も 日付入力がされていなければ 分析シートには
0を表示することになります。

JOSHさんは、そのことを一切説明せず、0や空白 以外の数字で一番右側の
数字の平均を出したいと 言っているのではないですか?

=IF(COUNT(B5:O5),VLOOKUP(10^17,B5:O5,MAX((B5:O5<>0)*(B5:O5<>"")*COLUMN(B5:O5),1)))

を試してみてください。
記事NO.50242 のレス /
削除チェック/

NO.50290  Re[26]: (削除)
■投稿者/ しげちゃん
■投稿日/ 2005/07/17(Sun) 23:07:20
□URL/

発想の転換をしましょう
>=IF(ISERROR(DATEDIF('1-5'!$A$3,'1-5'!$A$5,"d")),"",DATEDIF('1-5'!$A$3,'1-5'!$A$5,"d"))
この式を下記の式に換えます
=IF('1-5'!$A$3<'1-5'!$A$5,DATEDIF('1-5'!$A$3,'1-5'!$A$5,"d"),"")

AH5=LOOKUP(MAX(B5:O5)+1,B5:O5)

平均も
=AVERAGE(B5:O5)


因みに
DATEDIF('1-5'!$A$3,'1-5'!$A$5,"d")

'1-5'!$A$5-'1-5'!$A$3
ではいけないのですか?


別解として
=DATEDIF(LARGE('1-5'!$A$3:$A$31,2),MAX('1-5'!$A$3:$A$31),"D")
とか
=MAX('1-5'!$A$3:$A$31)-LARGE('1-5'!$A$3:$A$31,2)
記事NO.50242 のレス /
削除チェック/

NO.50292  Re[27]: (削除)
■投稿者/ しげちゃん
■投稿日/ 2005/07/17(Sun) 23:41:17
□URL/

Maronさんへ
>◆データを再現してみたのですが、元のデータである複数データの該当データが
>全く未入力の場合(そのようなケースがあるかどうかは、わかりませんが?)に
>は、分析シートのB列からO列が、0 になり、よってP列も 0 となるため、平均
>の式に影響するのではと思いそのようにしました。
そこまで考えるなら

質問者の回答に
>P5には、=(SUM(B5:O5))/(COUNT('1-5'!A3:A31)-1)が入っており
データが一つの場合 #DIV/0! も処理しなければなりません

記事NO.50242 のレス /
削除チェック/

NO.50296  Re[28]: (削除)
■投稿者/ Maron
■投稿日/ 2005/07/17(Sun) 23:55:41
□URL/

しげちゃん さん、ありがとうございます!

◆そこまで、思いつきませんでした、ご指摘ありがとうございます。
記事NO.50242 のレス /
削除チェック/

NO.50299  Re[29]: (削除)
■投稿者/ josh
■投稿日/ 2005/07/18(Mon) 18:49:09
□URL/

ぷりたま様,しげちゃん様,Maron様、本当にありがとうございました。

結果として、以下の数式でばっちりできました。大変、感激です。
Maron様の
=INDEX(A5:O5,MAX(IF(ISNUMBER(B5:O5)*(B5:O5<>0),COLUMN(B5:O5)))

しげちゃん様の
=INDEX(B5:O5,MAX(INDEX((B5:O5<>0)*(B5:O5<>"")*COLUMN(A5:N5),)))
=INDEX(5:5,MAX(INDEX((B5:O5<>0)*(B5:O5<>"")*COLUMN(B5:O5),)))

は、いずれもOKでした。

ぷりたま様のご指摘の数式を入れると、空白のままで何も表示されませんでした。
=IF(COUNT(B5:O5),VLOOKUP(10^17,B5:O5,MAX((B5:O5<>0)*(B5:O5<>"")*COLUMN(B5:O5),1)))

入出管理に利用しておりまして、1-5、5-6....71-75までシートがあります。
そのシートに、出し入れの日付を逐一書いていきます。
今回、お尋ねした数式が入っているのは、‘分析’というシートで、最新のファイルを出した日付から先回のファイルを出した日付を差し引き、日数を出します。

A列とQ列には、ファイル名
B5:O5がファイル1...B42:O42がファイル35
R5:AE5がファイル39...R41:AE41がファイル75
P列とAF列が横平均
R42:AE42までが縦平均

今回教えていただくまでは、入出頻度の多いものと遅いもので日付的にかなりの間が開くので、常に最新のファイルの入出も把握したいと考えていました。

これまでは、最新のファイルだけをshiftキーで拾って3つぐらいに分けて、合計を出し、75で割っておりました。

その程度の知識で作り上げたものなので、きっと皆様がスマートにされる方法とは全然、違って意味のないことをたくさんしているのだろうな、と思います。

このたびは、その辺りに売っているエクセルのノウハウ本では、よく分からずこちらを利用させていただいたしだいでございます。本当にありがとうございました。

最後になりますが、
=TYPE(B5)
=TYPE(C5)


=TYPE(O5)
で、出していきますと日数計算がなされデーターの入っているものは、1に、まだ空白になっているセルの分は、2になっています。

皆様が、私の少ない情報を元に、分析しお時間を使ってくださったことに改めて御礼申し上げます。

本当にありがとうございました。















++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2002
++++++++++++++++++++
記事NO.50242 のレス / END
削除チェック/

NO.50291  条件を2つで抜き出す
■投稿者/ りゅう
■投稿日/ 2005/07/17(Sun) 23:20:25
□URL/

教えて下さい。
平成17年7月分リスト
   A   B  C   D    E…  
      1日  2日   3日  4日…      31日 
1 みかん  ○          ○…       ○
2 りんご     ○   ○           ○
3
4
5 トマト  ○      ○   ○  

1日〜31日まで○があったり空白だったりというリストがあります。
この中でA列に名前があり、B列が空白の場合Aのセルの名前をB6以降のセルに表示したいです。
同様にA列に名前があり、C列が空白の場合 A列の名前をC6以降に表示
これを繰り返し31日まで表示したいです。

B2が空白なので1日の分はりんご
2日はみかんとトマト

何か方法はありますでしょうか? 宜しくお願いします。
 
            




++++++++++++++++++++
OS      ⇒Windows XP
Version⇒Excel 2003
++++++++++++++++++++
親記事
削除チェック/

NO.50293  Re[1]: 条件を2つで抜き出す
■投稿者/ Maron
■投稿日/ 2005/07/17(Sun) 23:50:26
□URL/

りゅうさん、はじめまして!

◆条件の確認と設定!
1)1行目に日付がありますので、品名はA2からA6に入力されているものとします。
2)品名はA2からA6まで空欄が無いものとします。

◆当日、空白の品名の式を、B7に
B7=IF(ROW(A1)>COUNTBLANK(B$2:B$6),"",INDEX($A$1:$A$6,SMALL(IF(B$2:B$6="",ROW($B$2:$B$6)),ROW(A1))))

★この式は「配列数式」です。Ctrl+Shift+Enter を押して、式を確定させてください。
★式が確定すると、式の両端に{ }がつきます。
★式を確定させたら、右・下にコピー

◆いかがですか!
記事NO.50291 のレス /
削除チェック/

NO.50294  (削除)
■投稿者/ /
■投稿日/ 2005/07/17(Sun) 23:52:29
□URL/

この記事は削除されました
記事NO.50291 のレス /
削除チェック/

NO.50295  Re[2]: 条件を2つで抜き出す
■投稿者/ ぷりたま
■投稿日/ 2005/07/17(Sun) 23:54:03
□URL/

こんばんは、ぷりたまです。

B6セルに
=IF(SUM(($A$2:$A$6<>"")*(B$2:B$6=""))>=ROW(B1),INDEX($A$1:$A$6,SMALL(IF(($A$2:$A$6<>"")*(B$2:B$6=""),ROW($A$2:$A$6)),ROW(B1)),1),"")
配列数式ですので[CTRL]+[SHIFT]を押しながら[ENTER]で確定です。

下にB11までフィルダウンコピー
右にAF列までフィルコピーで どうでしょうか?

記事NO.50291 のレス /
削除チェック/

NO.50300  Re[3]: 条件を2つで抜き出す
■投稿者/ りゅう
■投稿日/ 2005/07/18(Mon) 21:38:08
□URL/

Maron さん ぷりたまさん やっとできました。

それにしても 大変だった!!
実際に使用しているリストはF2が平成17年7月分リストで
F5が名前 I5から○が始まっています。
表は簡単にした方がわかりやすいと思って変更してレスしたのが仇になりました。
せっかく教えてもらったのに、セル番地関係でできなかったらどうしようかと思いました。
式の意味は今ひとつ分かりませんが、今後の課題とします。

ともかく大変助かりました。有難うございました。




記事NO.50291 のレス / END
削除チェック/

NO.50240  循環計算
■投稿者/ donington
■投稿日/ 2005/07/15(Fri) 22:02:49
□URL/

例として、φ+cotφ=1.869 という式があったとき、φを求める方法を教えていただけませんでしょうか。循環計算?と呼ぶのか分かりませんが、よろしくお願いします。
親記事
削除チェック/

NO.50243  Re[1]: 循環計算
■投稿者/ クロメート
■投稿日/ 2005/07/15(Fri) 22:29:38
□URL/

御機嫌如何? クロメートです
ん〜〜数学から遠のいて久しいのでエクセルの機能で(^^;
B1セルに
=A1+1/TAN(A1)
ツール - ゴールシーク
数式 : B1
目標 : 1.869
変化 : A1

記事NO.50240 のレス /
削除チェック/

NO.50302  Re[2]: 循環計算
■投稿者/ donington
■投稿日/ 2005/07/19(Tue) 09:26:49
□URL/

方法を教えていただきまして、ありがとうございました。
おかげさまで解決しました。
欲を言えば、ゴールシークを用いると「目標」に数値を直接入力しなければなりませんので、これが自動化できれば完璧なです。
そうなるとやはりマクロとか、むずかしいやり方になってしまうのでしょうか?
記事NO.50240 のレス / END
削除チェック/

NO.50199  お力をおかしてください
■投稿者/ nanako
■投稿日/ 2005/07/15(Fri) 09:59:29
□URL/

始めまして質問をさせて頂きます。

新聞配布一覧があります。
書式は
     A B    C D   E F    G      H ””AQ
    産経新聞 日経新聞 朝日新聞 科学新聞 電気新聞 ””
    朝 夕  朝 夕  朝 夕  朝   朝 ””
1人事 2 3 3 1 2 1 2
2規格 3 2 1 1 1 1
3秘書 1 1 1 1 1
4組合 1 1 1 2 1
5総務 1 2 2 2 2 2 2 2  
"
94

これを別Sheetに下記の形式にしたいのですが
自分でやった法のが速いですが?
教えてください

   朝 産経新聞 夕 朝 日経新聞 夕
   2  人事 3 3 人事 1
  3  規格 2 1 規格 1
 1 秘書 1 秘書 1
  1 組合 2 組合



++++++++++++++++++++
OS      ⇒Windows 98
Version⇒Excel 2000
++++++++++++++++++++
親記事
削除チェック/

NO.50200  Re[1]: お力をおかしてください
■投稿者/ 独覚
■投稿日/ 2005/07/15(Fri) 10:23:39
□URL/

まずは以下をよくお読みになりどこか一ヶ所続ける場所を決めてそこ以外は閉じておいて下さい。

http://excelfactory.net/excelboard/

>マルチポストはご遠慮ください。
>同じ内容の質問を、同時に複数の掲示板に投稿 する行為をマルチポストと言います。
>善意で回答してくれる方々や、ほかで質問した掲示板に迷惑がかかる恐れがあります。
>(先に質問した掲示板でどうしてもレスがつかなくて、ほかで質問したい場合は、
>その掲示板に解決マークをつけるか、削除するなどして、次の掲示板で質問すればこれに該当しません)
記事NO.50199 のレス /
削除チェック/

NO.50201  Re[2]: お力をおかしてください
■投稿者/ nanako
■投稿日/ 2005/07/15(Fri) 10:32:15
□URL/

ごめんなさい

他のサイトの質問は消します」


++++++++++++++++++++
OS      ⇒Windows 98
Version⇒Excel 2000
++++++++++++++++++++
記事NO.50199 のレス / END
削除チェック/

NO.50203  Re[3]: お力をおかしてください
■投稿者/ Chiquilin
■投稿日/ 2005/07/15(Fri) 10:41:29
□URL/

少しはルールを読んで下さい。そのマークは「迷宮入」であることを表すもの
です。こちらでも進める気がないということですか?
記事NO.50199 のレス /
削除チェック/

NO.50205  Re[4]: お力をおかしてください
■投稿者/ 独覚
■投稿日/ 2005/07/15(Fri) 10:57:15
□URL/

Chiquilinさん、

他のサイトで閉じてない所がありますのでこちらは終わらせるつもりでしょう。

迷宮入りアイコンの説明に
「解決不可orレスが全く付かなくてほかのサイトに行くときなど・・」
とありますのであながち間違いでもないと思いますよ。

#もっとも「他のサイトの質問は消します」とはなんか矛盾している気はしますが。
記事NO.50199 のレス /
削除チェック/

NO.50303  Re[5]: お力をおかしてください
■投稿者/ nanako
■投稿日/ 2005/07/19(Tue) 09:53:53
□URL/

すいません
ルールを理解してから
改めて、質問します
記事NO.50199 のレス / END
削除チェック/

NO.50304  結合セルを含む表のSUMPRODUCT
■投稿者/ 白茶
■投稿日/ 2005/07/19(Tue) 10:22:06
□URL/


お世話になります。
また、ハマってしましました。


__│__A__│_B_│__C__│__D__│

1│_____│___│_JA__│_NK__│
2│ │ A│ 10│ 12│
3│ 1/3│ B│ 50│ 42│
4│_____│__C│___45│___56│
5│ │ A│ 84│ 78│
6│ 1/10│ B│ 53│ 56│
7│_____│__C│___95│___12│
8│ │ A│ 78│ 54│
9│ 1/25│ B│ 26│ 98│
10│_____│__C│___34│___32│
11│ │ A│ 19│ 56│
12│ 2/8│ B│ 54│ 45│
13│_____│__C│___67│___78│
14│ │ A│ 64│ 56│
15│ 2/15│ B│ 28│ 21│
16│_____│__C│___67│___45│


 _____   _JA__ _NK__
24│__1/7│ A│_____│_____│
25│_1/31│ B│_____│_____│
26│   C│_____│_____│


A列は日付です。3行結合してセンタリングしてあります。
3行で1日分のデータです。
日付は昇順ですが、飛び飛びです。

C24:D26に、
指定した期間内の各項目毎の合計を出す式を求めたいと思います。

期間の指定はA24とA25に入力した日付を元にします。
つまり、
A24からA25までの期間の各列のA、B、C毎の合計です。

たとえば、C24は、
=SUMPRODUCT((A2:A16>=A24)*(A2:A16<=A25)*(B2:B16=B24)*C2:C16)
(※式中「$」省略)でイケるんですが、
今回A列の結合を解く事が許されず、(頑固者が居りまして)
B、Cについての計算ができません。


=INDIRECT("A"&FLOOR(ROW(A3),3)-1)
ってな具合に、A列を他の列で単セルに置き換えて・・・
みたく、
作業列や別シートを使わない方法でやりたいのですが、
         ~~~~~~~~
できれば。

それは可能でしょうか?



考え方としては、
=SUMPRODUCT((A2:A16>=A24)*(A2:A16<=A25)*(B2:B16=B24)*C2:C16)
^^^^^^この
A2:A16を

{A2;A2;A2;A5;A5;A5;A8;A8;A8;A11;A11;A11;A14;A14;A14}

という配列に置き換えることができれば可能なのかな?
と思ったのですが、
そこで思考回路がショートしてしまいました。

_△_).o0ぷしゅ〜〜・・・、と。


実シートは縦方向にもっと長いデータとなっております。
何か良いアイデアがありましたら、教えて下さい。
宜しくお願いします。






++++++++++++++++++++
OS      ⇒Windows 98
Version⇒Excel 2000
++++++++++++++++++++
親記事
削除チェック/

NO.50305  Re[1]: 結合セルを含む表のSUMPRODUCT
■投稿者/ しげちゃん
■投稿日/ 2005/07/19(Tue) 11:08:31
□URL/

あまりお薦めしませんが・・・
=SUMPRODUCT((A2:A16>=A24)*(A2:A16<=A25)*(B2:B16=B24)*C2:C16)
+SUMPRODUCT((A2:A16>=A24)*(A2:A16<=A25)*(B3:B17=B24)*C3:C17)
+SUMPRODUCT((A2:A16>=A24)*(A2:A16<=A25)*(B4:B18=B24)*C4:C18)
でもできそうですね


記事NO.50304 のレス /
削除チェック/

NO.50306  Re[2]: 結合セルを含む表のSUMPRODUCT
■投稿者/ 白茶
■投稿日/ 2005/07/19(Tue) 11:53:39
□URL/


>=SUMPRODUCT((A2:A16>=A24)*(A2:A16<=A25)*(B2:B16=B24)*C2:C16)
>+SUMPRODUCT((A2:A16>=A24)*(A2:A16<=A25)*(B3:B17=B24)*C3:C17)
>+SUMPRODUCT((A2:A16>=A24)*(A2:A16<=A25)*(B4:B18=B24)*C4:C18)

OH!
それだぁ〜!

まったく気付かなかったデスよ。


>あまりお薦めしませんが・・・
否、充分です。

しげちゃんさん
有難う御座いました。



(@´ω`@ゞ へへ

>>(頑固者が居りまして)
結果、自分も充分頑固な頭してるんだなと思い知る。

記事NO.50304 のレス / END
削除チェック/

NO.50307  60進法で表示(続)
■投稿者/ 青空
■投稿日/ 2005/07/19(Tue) 12:50:56
□URL/

こんにちは。
達人の皆様 よろしくお願いいたします。

以前にこちらで数式を教えていただいて、運用しておりましたが、
私の検証不足のために、今になって不具合がでてきました。

現状
      G            H      I
     残業時間(リスト選択)  残業時間数  計算作業列
  12  17:20〜18:20       0.6      1.0
  ・
  ・                 ↑
  ・                ここを1.0にしたい

そして、セルには下記の数式が入っています。

  数式  H12=IF(ISERROR(INT(I12)+MOD(I12,1)*0.6),"",INT(I12)+MOD(I12,1)*0.6)
      I12=IF(ISERROR((SUBSTITUTE(G12,MID(G12,1,FIND("〜",G12)-1)&"〜","")-MID(G12,1,FIND("〜",G12)-1))*24),"",(SUBSTITUTE(G12,MID(G12,1,FIND("〜",G12)-1)&"〜","")-MID(G12,1,FIND("〜",G12)-1))*24)

   (H・I列は下へオートフィルです。)

   (データがないときに、エラー表示を出さないようにするために
    ISERRORを使っています。)

 他の場合には、H列には60進法でキチンと表示されています。

        H      I
        1.3 1.5
        2.0 2.0
        2.3 2.5
        3.0 3.0
        3.3 3.5
        4.0 4.0

H列において、1時間のときに 0.6ではなくて、
1.0と表示させる方法をご教示願えませんでしょうか?




      



++++++++++++++++++++
OS      ⇒Windows 98
Version⇒Excel 2000
++++++++++++++++++++
親記事
削除チェック/

NO.50308  Re[1]: 60進法で表示(続)
■投稿者/ Chiquilin
■投稿日/ 2005/07/19(Tue) 13:16:10
□URL/

リスト選択でやっているのなら それを検索キーにして VLOOKUP関数を使った方が
良いのでは?
記事NO.50307 のレス /
削除チェック/

NO.50309  Re[2]: 60進法で表示(続)
■投稿者/ 白茶
■投稿日/ 2005/07/19(Tue) 13:19:55
□URL/

ども。

式中の

SUBSTITUTE(G12,MID(G12,1,FIND("〜",G12)-1)&"〜","")-MID(G12,1,FIND("〜",G12)-1)


ROUND(それ,10)

で囲ってみて下さい。

記事NO.50307 のレス /
削除チェック/

NO.50311  Re[3]: 60進法で表示(続)
■投稿者/ 白茶
■投稿日/ 2005/07/19(Tue) 13:46:15
□URL/


例中の
H12の「0.6」と言う値は、
正確には「0.599999999999999」なんです。

小数を扱う関数は、注意が必要なんです。
詳しくは「浮動小数点」で検索して調べてみて下さい。

MODやINTを使う限り、つきまとう問題です。

抜本的ではありませんが、
とりあえず、
ご質問の場合は「ROUND(それ,10)」で回避できると思います。
            ^^別に10でなくても良い気がしますが、
            わたしのクセです。

といっても、
これだって正確には「1.00000000048」ですよ。
誤解があってはいけないので補足しておきます。

記事NO.50307 のレス /
削除チェック/

NO.50314  Re[4]: 60進法で表示(続)
■投稿者/ 青空
■投稿日/ 2005/07/19(Tue) 14:19:47
□URL/

Chiquilin様 白茶様

早速のレスをありがとうございます。

Chiquilin様の
>リスト選択でやっているのなら それを検索キーにして VLOOKUP関数・・・

こちらの方で運用してみたいと考えます。
試しましたところ、うまく引っ張ってきてくれました。

白茶様の回避法・・・、
  確かに回避できました。
  しかしながら、おっしゃる通り、
  こちらの掲示板でもたびたび指摘されていますように、
  小数の問題点がありますので、
  今回は運用に取り入れずに、勉強させていただきました。

お二方、ありがとうございました。
解決とさせていただきます。




++++++++++++++++++++
OS      ⇒Windows 98
Version⇒Excel 2000
++++++++++++++++++++
記事NO.50307 のレス / END
削除チェック/

NO.50313  Re[4]: 60進法で表示(続)
■投稿者/ 白茶
■投稿日/ 2005/07/19(Tue) 14:07:28
□URL/


ごめんなさい。

後で読んでみて
あれ?
おかしいな〜と思っていたら・・・。

とんだ読み違いを・・・
失礼。

H12を「1.0」にするのね。
何てこった。
ズレてた。

記事NO.50307 のレス /
削除チェック/

NO.50312  Re[4]: 60進法で表示(続)
■投稿者/ *****
■投稿日/ 2005/07/19(Tue) 14:06:24
□URL/

回答ではありません。

I列(計算作業列)を使う位なら、
私なら、G列(残業時間)を分けますね。
それなら計算作業列など使わなくても、もっと簡単な式ですむ。

記事NO.50307 のレス /
削除チェック/

NO.50315  Re[5]: 60進法で表示(続)
■投稿者/ 青空
■投稿日/ 2005/07/19(Tue) 14:23:26
□URL/

白茶様
なんだか・・・・、うまくいきません。
回避できませんでした。
ごめんなさい。
さっきのレスは、実証前でした。



++++++++++++++++++++
OS      ⇒Windows 98
Version⇒Excel 2000
++++++++++++++++++++
記事NO.50307 のレス /
削除チェック/

NO.50316  Re[6]: 60進法で表示(続)
■投稿者/ 青空
■投稿日/ 2005/07/19(Tue) 14:46:48
□URL/

*****様 白茶様

レスを書いている間にいただいたみたいです。
ありがとうございます。

*****様のおっしゃる 「G列を分ける・・・・」は・・・、
前回の質問の折にも他の方に、時間も取り出しやすい、
とのことでアドバイスをいただきました。
しかしながら、時間帯ケースが6種に決まっておりましたので、
リスト選択にしました。

皆様 ありがとうございました。



++++++++++++++++++++
OS      ⇒Windows 98
Version⇒Excel 2000
++++++++++++++++++++
記事NO.50307 のレス /
削除チェック/

NO.50317  行列の計算について
■投稿者/ あきな
■投稿日/ 2005/07/19(Tue) 15:14:02
□URL/

初めまして、こんにちは
A行B列×A行B列はsumproductを使えば解けるのですが、
A行B列×B行C列の問題が解けません。これってexcelで解けますか?
教えてください。
親記事
削除チェック/

NO.50319  Re[1]: 行列の計算について
■投稿者/ *****
■投稿日/ 2005/07/19(Tue) 15:34:57
□URL/

もう少し落ち着いて質問を見返してください。
A行とは?
>A行B列×A行B列はsumproductを使えば解けるのですが、
これってどんな式ですか?
教えてください。
記事NO.50317 のレス /
削除チェック/

NO.50320  Re[1]: 行列の計算について
■投稿者/ クロ
■投稿日/ 2005/07/19(Tue) 15:36:22
□URL/

MMULT関数でしょうか?

HELP(Excel2000)より抜粋

MMULT(配列1, 配列2)

配列1、配列2 行列積を求める 2 つの配列を指定します。

配列1 の列数は、配列2 の行数と等しくなければなりません。
また、両方の配列には数値だけが含まれている必要があります。


 
記事NO.50317 のレス /
削除チェック/


パスワード/

全ページ数 / [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49]

- Child SEARCH -