advanced help
per page, with , order by , clip by
Results of 1 - 1 of about 295 for cell filename (0.001 sec.)
cell (1170), filename (1981)
[[20040324220142]]
#score: 11170
@digest: 58577bc641c0c4d83489fa628ba7c523
@id: 5871
@mdate: 2004-04-01T04:47:17Z
@size: 12385
@type: text/plain
#keywords: ゼニ (56475), ニハ (56475), ハコ (53151), コベ (52948), 君aa (46891), 君1 (45246), 君bb (39076), 日目 (37932), 君ff (31260), 君dd (31260), 目シ (19645), 力! (9429), パチ (9289), 日前 (8151), 2004 (6977), ベ) (6882), 日経 (6246), 退散 (5375), 付順 (4779), 当行 (4295), 経過 (3787), sheet1 (3351), 、7 (3261), indirect (2484), 再計 (1949), 最新 (1944), filename (1911), 回数 (1887), 確定 (1825), 出力 (1790), 推測 (1574), jun53 (1529)
『○日経過のリストをリアル生成』(ゼニハコベ)
現在が2004/1/9の時 A B C 1 2004/1/1 A君 AA@AA 2 2004/1/2 B君 BB@BB 3 2004/1/2 C君 CC@CC 4 2004/1/4 D君 DD@DD 5 2004/1/6 E君 EE@EE 6 2004/1/8 F君 FF@FF の、リストがあり シート名「3日前」に A B 1 EE@EE E君 シート名「7日前」に A B 1 BB@BB B君 2 CC@CC C君 のように、3日前と、7日前のリストを毎日更新出来るようにするには どうすれば良いのでしょうか? ---- VBA(マクロ)に頼ることになりそうですけど・・ 構わないでしょうか? (INA) ---- [[20040324105150]] 『データの抽出について』(超初心者) にレスした応用として書き込みます。 元データ(Sheet1とします)のD列に作業列を設け、C列には、重複が無いものとして考えています。 元データのD1セルに =TODAY()-A1 例の検証で考えると ="2004/1/9"-A1 とし、D6までコピー。 表示するシート(7日前、3日前)のA1に =INDEX(Sheet1!$C$1:$C$6,SMALL(IF(Sheet1!$D$1:$D$6-LEFT(RIGHT(CELL("filename",A1),LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1),1)),FIND("日前",RIGHT(CELL("filename",A1),LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1),1)),1)-1)<>0,"",ROW(Sheet1!$D$1:$D$6)),ROW())) とし、Ctrl+Shift+Enter で配列数式として確定します。( { } で括られた式になります) また、該当値が無い場合は、 #NUM! が表示されます。 B1に =IF(ISERROR(A1),"",INDEX(Sheet1!$B$1:$B$6,MATCH(A1,Sheet1!$C$1:$C$6,FALSE),)) A1・B1セルを下方コピー いかがでしょうか? (sin) 明日より多忙につき、本日、書き溜め!&打ち止め ---- 凄い凄い凄い凄い、これは凄い 昨日徹夜で、他は見えなくする方法で作ってましたが 素晴らしいですね、 BやCに重複があり、最新のみを出力するには、どうすれば・・・・ (ゼニハコベ) 追加 現在元データは、E列で、何回目カウントをしており B E A君 1 B君 1 C君 1 D君 1 E君 1 B君 2 F君 1 G君 1 C君 2 H君 1 B君 3 A君 2 このような状態です 3日目は、古い方、Eが1の時だけ抽出 7日目は、最新を抽出・・・・のように出来ますか ---- 一般機能でお望みのようですので、退散します。 それでは〜 ‾‾‾ヾ(^_^) (INA) ---- なるほど、説明不足でした その3日前のデータは、過去初めてか?という事です 3日前の一覧は、初めての人だけを表示したいので 重複カウントEが1を表示しているものだけを表示したいのです 7日前は、そのままで良かったみたいです (ゼニハコベ) ---- ありがとう御座います 昨日も徹夜で頑張ってみたのですが 数十のデータなら上手く機能しているみたいなのですが 3000以上のデータでは、なかなか表示してくれないようです・・・ (ゼニハコベ) ---- もう一度整理して書きます 現在が2004/1/9の時 A B C D E 1 2004/1/1 A君 AA@AA 1 2 2004/1/2 B君 BB@BB 1 3 2004/1/2 A君 AA@AA 2 4 2004/1/2 D君 DD@DD 1 5 2004/1/5 E君 EE@EE 1 6 2004/1/6 B君 BB@BB 2 7 2004/1/6 F君 FF@FF 1 8 2004/1/6 A君 AA@AA 3 9 2004/1/7 E君 EE@EE 2 10 2004/1/8 F君 FF@FF 1 (Eは、同君の入力回数) シート名「3日目」に A B 1 FF@FF F君 説明、入力され7日目経過したデータ 6 2004/1/6 B君 BB@BB 2 7 2004/1/6 F君 FF@FF 1 8 2004/1/6 A君 AA@AA 3 この中では、F君は、初めてなので、出力 シート名「7日目」に A B 1 DD@DD D君 説明、入力され7日目経過したデータ A B C D E 2 2004/1/2 B君 BB@BB 1 3 2004/1/2 A君 AA@AA 2 4 2004/1/2 D君 DD@DD 1 この中の、A君B君は、更新されてるが D君の更新は無いので、出力 率直に言うと、 3日目に、初めて使ってみてどうでしたか? 7日目に、そろそろ交換時期ですね・・・・ としたいのです。 シートを隔てると、かなり重いみたいなので 一旦 同シートに O P Q R 1 FF@FF F君 DD@DD D君 のように出力して 3日目シート A1 =入力!O1 B1 =入力!P1 7日目シート A1 =入力!Q1 B1 =入力!R1 で、表示させたいと思います (ゼニハコベ) ---- jun53さん、本当にありがとうございます。 3日目の方はバッチリです! 諦められたらどうしょうかと、ドキドキしてました・・・ 7日目は、7日間入力が無いデータの一覧、と言った方が解りやすいでしょうか・・・ 最後の入力から、7日経過した一覧、なのですが、出来ますでしょうか? ---- 手が空きました。jun53さん代わりの回答ありがとうございました。 意味が分からず、しばし傍観していましたが、 チョット考えてみたので、書き込みます。 その前に、ゼニハコベさん、ちょっと疑問があるのですが、 >3日目に、初めて使ってみてどうでしたか? 2日目、1日目にも名前が出て来る事は無いのでしょうか? >7日目に、そろそろ交換時期ですね・・・・ 以前に何回出てこようが、7日目以降に名前が出なければ、該当するという事ですね? 以下、『3日目、7日目以降に名前が出てこないものが対象』を前提として考えてみました。 今回は、式が長くなるので、Sheet名からの読み込みにはしておりません。 元データ(Sheet1)の作業列 D1: =$G$1-A1 G1セルに日付を入力(2004/1/9) E1: =COUNTIF($B$1:$B1,$B1) 該当行以前での回数※A列は、日付順に並び替え(入力)が前提 F1: =COUNTIF($B$1:$B$10,$B1) データ全体での回数 D1:F1を10行目までコピー 3日目シート A1: =INDEX(Sheet1!$C$1:$C$10,SMALL(SUMPRODUCT((Sheet1!$D$1:$D$10=3)*(Sheet1!$E$1:$E$10=1)*(Sheet1!$F$1:$F$10=1)*(ROW(Sheet1!$D$1:$D$10))),ROW())) B1: =IF(ISERROR(A1),"",INDEX(Sheet1!$B$1:$B$10,MATCH(A1,Sheet1!$C$1:$C$10,FALSE),)) 7日目シート A1: =INDEX(Sheet1!$C$1:$C$10,SMALL(SUMPRODUCT((Sheet1!$D$1:$D$10=7)*(Sheet1!$E$1:$E$10=Sheet1!$F$1:$F$10)*ROW(Sheet1!$D$1:$D$10)),ROW())) B1: =IF(ISERROR(A1),"",INDEX(Sheet1!$B$1:$B$10,MATCH(A1,Sheet1!$C$1:$C$10,FALSE),)) 今回は、そのままEnterで確定して下さい。 3日目=3日目の回数が、日付順でも、全体でも『1』が対象と考えました。 7日目=7日目の回数が、日付順でも、全体でも『同じ=最終数』と考えました。 データの重さは、考慮しておりません、あしからず (sin) ---- ゼニハコベさん、私の書込み現実的ではありませんでした。 試しに、データ、数式を5000行分コピーしてみましたが、再計算に時間が掛かりすぎます。 代案1 オートフィルターを使う。(←再計算の状況を眺めていられる程度の速さです) Sheet1 G1セルに =IF(E1=F1,1,"") を付け加え、 3日目の場合は、D列で3、E列で1、F列で1を選択 7日目の場合は、D列で7、G列で1を選択 B:C列をコピーし、目的のシートに値で貼り付け、C列選択、切取り、B列選択、切取った列の挿入 が、現実的かも。 代案2 詳しく無いので(扱えないので)、確証はありませんが、マクロで処理すれば計算が速いかも? 代案2をご希望の場合は、退散されたINAさんに再度ご登場していただくか、他の方の書込みを お待ち下さい。 (sin) ---- jun53さん、本当にありがとうございます >最後の入力から、7日経過丁度のものだけ 意味は、これで良いのですが、7日目として表示されてる中から選んで 新たに入力すると、その7日目の中の一番下へ表示される場所がかわるだけのようです。 =COUNTIF(B$1:B1,B1) の上下逆の表示出来れば、良いのではないでしょうか? 最終入力が1、過去の重複が2以上になりますので sinさんも、ありがとうございます。 3日目の場合、3日間に新たに入力があってもそのままでOKです 7日目は、その通りです ---- 頭パンクです。 何がなんだか、何のことやら、・・・ ぼんやりとした疑問は、 同日付で同名の入力が、現実的に起こりえるのか??? こんな意見しか言えません。 (sin) ---- やっと、意味が分かってきました。&自分の間違いに気付きました。 >7日目として表示されてる中から選んで >新たに入力すると、その7日目の中の一番下へ表示される場所がかわるだけのようです。 元あった行以降に同じものを入力すると、例え同じ7日目であったとしても、 行o=入力日付順として検索させているため、 新たに入力したものが、最新の情報として計算されています。そのため、 行全体で、7日目該当値の中の該当行位置(行番号の小さい物順)に表示されます。 訂正式は、下記の通りです。チョット勘違いをしていました。お手間を取らせゴメンナサイ! 7日目A1セル =INDEX(Sheet1!$C$1:$C$100,SMALL(IF(Sheet1!$D$1:$D$100*(Sheet1!$E$1:$E$100=Sheet1!$F$1:$F$100)<>7,"",ROW(Sheet1!$D$1:$D$100)),ROW())) Ctrl+Shift+Enterで配列数式として確定。 3日目A1セル =INDEX(Sheet1!$C$1:$C$100,SMALL(IF(Sheet1!$D$1:$D$100*(Sheet1!$E$1:$E$100=1)<>3,"",ROW(Sheet1!$D$1:$D$100)),ROW())) Ctrl+Shift+Enterで配列数式として確定。 ※※※ ○君や○○@○○が、同じものが二人存在するならば、上記式を応用し、B1セルに入れてください。 100行では、問題なく再計算されますね! (sin) ---- sinさんありがとうございます 7日目の方で、やはり以後重複があると順番が入れ替わるだけのようです 考えてみたのですが 3日目の、初めまして出力は E列の重複チェック =COUNTIF(B$1:B$5000,B1) これだと、出力すべき物でも、新たに入力があると、1では無くなるので =COUNTIF(B$1:B1,B1) こちらの方が正解だと思います 7日目の、最終入力から7日経過しました出力は E列の重複チェックを =COUNTIF(B1:B$5000,B1) こうすれば、正しく出力できてるようです 現在チェック中です (ゼニハコベ) ---- 『何が正解か?』に関しては、『どういう条件下でどうしたいのか?』に依りますので、 一番分かっているゼニハコベさんが、決めて(提示して)ください! jun53さんにしても私にしても、その他の助言・回答を準備してくれている方々も、それ無しでは、推測でしかコメント出来ません。 以下、私の推測による5000行データ対応策_訂正版です。 Sheet1データA〜E列5000行、3日目・7日目シート関数数式入力A〜B列1500行でテストしました。 データ容量2.6MB、カップ○ー○○にお湯を入れて、ファイルを開き再計算が終了した時点で カップ○ー○○を食べると『早かったか?』ぐらいの待ち時間です。 例えになってないかな? Sheet1A列には、日時順に入力し最終行が最新の入力情報となる と推測しました。 B列△△君に関しては、重複(同姓同名)も有り得るが、 C列××@××に関しては、一人一人固有のもの と推測しています。 Sheet1のD,F列およびG1,H1セルを作業用に使用します。 G1セルでA列の最終行を出します。 =MAX(IF(A1:A10000<>"",ROW(A1:A10000))) Ctrl+Shift+Enterで確定 F1セルにA列最終行の日付を表示します。※任意の日付を指定する場合は、入力して下さい。 =INDIRECT("A"&G1) D1セルでH1セルとの差を出します。jun53さんが、書き込まれたのを参考にし、 =IF(A1="","",$H$1-A1) E1セルでは、D1セルが3の場合と、7の場合とで処理を分けました。ゼニハコベさんの書き込まれた案を参考にし、 D列が3の場合は、1行目から該当行間の数、7の場合は、該当行から最終行間の数を計算します。 =IF(A1="","",IF(D1=3,COUNTIF($C$1:C1,C1),IF(D1=7,COUNTIF(INDIRECT("C"&ROW()&":C"&$G$1),C1),0))) 3日目シートA1セル =INDEX(INDIRECT("Sheet1!C1:C"&Sheet1!$G$1),SMALL(IF(INDIRECT("Sheet1!D1:D"&Sheet1!$G$1)*INDIRECT("Sheet1!E1:E"&Sheet1!$G$1)<>3,"",ROW(INDIRECT("Sheet1!A1:A"&Sheet1!$G$1))),ROW())) Ctrl+Shift+Enterで確定 3日目シートB1セル =INDEX(INDIRECT("Sheet1!B1:B"&Sheet1!$G$1),SMALL(IF(INDIRECT("Sheet1!D1:D"&Sheet1!$G$1)*INDIRECT("Sheet1!E1:E"&Sheet1!$G$1)<>3,"",ROW(INDIRECT("Sheet1!A1:A"&Sheet1!$G$1))),ROW())) Ctrl+Shift+Enterで確定 7日目シートには3日目の各式の『<>3』を『<>7』にするだけです。 Sheet1のE列は、D列が3又は7の場合のみカウントさせ、それ以外の場合には0にします。 3日目、7日目に表示するのは、Sheet1のD列が3、7でE列が1の場合ですので、D列×E列が3、7になる場合のみです。 これで、いかがでしょうか? \/ 近頃手もつないでいないな (sin) ---- パチパチパチパチ! 指紋が無くなる程の拍手。 「あ〜痛っ!」 sinさん、後二日で開幕でっせ。 '''万障繰り合わせて応援を!''' 名も無き(阪神ファン) 先日の伊良部良かったでッ。 ---- できました!! sinさん jun53さん 本当にありがとうございます。 今、同じファイルに何通りものリストが混在していますので 分離して、早く処理出来る方法を選択したいと思います 今日は早く眠れそうです、 ここまで複雑になると教えて頂いた方法を自分のシートに合うように 書き換えるのも大変ですね 一発で置き換える方法ってあるのでしょうか・・・・・ (ゼニハコベ) ---- お役に立てたようでホッとしています。 >一発で置き換える方法ってあるのでしょうか・・・・・ 血と汗と涙を流した分、何かを運んでくれるのでしょうから、がんばって下さい。 きっと、見返りがあるでしょう。 銭は増えずに、仕事だけが増えたりして…、でも信頼も増えているから良しとしましょう ※私は、3日目A1の式を基本とし、それをコピーし、セル指定部分の書き換えで済ましました。 名も無き(阪神ファン)の弥太郎さん(んっ?) 今年のポイントは、赤星の振り逃げ、二盗、三盗、本盗 結果はどうであれ、見てみたい。 見てみたいといえば、日本シリーズ 近鉄vs阪神 ←毎年同じ予想(願望) 実現したら…、考えただけ満面の笑みです。 おしゃべりがすぎました。 退散します (sin) ...
http://www.excel.studio-kazu.jp/wiki/kazuwiki/200403/20040324220142.txt - [detail] - similar
PREV NEXT
Powered by Hyper Estraier 1.4.13, with 97013 documents and 608132 words.

訪問者:カウンタValid HTML 4.01 Transitional