• 締切済み

データ(行)の抽出について

こんにちわ。 件名の通りなのですが、もし方法をご存じの方がおりましたら ご教授頂けると幸いです。 Excelにて作成したカレンダーをwebページに取り込みたいを思ってます。 1日1~数行で構成され、列には過去にその日に起こった出来事が記入されています そのデータを、当日の行だけを引っ張ってくることは可能でしょうか? おそらく日別にシートorBOOKを作成すれば可能だとは思うのですが 1つのシート(月別)から行だけを抽出することはできるのでしょうか? それと実現可能な場合毎朝自動で更新は可能でしょうか? それとも毎朝手動で差し替えが必要でしょうか? できればhtmlで実現したいのですが、不可能な場合他の言語で実現可能な ものがあれば教えていただけると助かります。 よろしくお願いいたします

みんなの回答

  • wolv
  • ベストアンサー率37% (376/1001)
回答No.3

サーバーでSSLが使えるなら、 「<!--#exec cmd="~" -->」 を使うと読み込めそうです。例えば、 日記ファイルの各行は、030220 のような6桁の数字で始まるようにしておき、 <!--#exec cmd="grep '^'`date +%y%m%d` nikki.txt" --> を日記を挿入しておきたい部分に書いておけば、実現できそうです。 一日分のデータが数行ある場合は、同じ日付の行を複数用意しておけば、OKです。 蛇足:動作は、 「<!--#exec cmd="grep '^'`date +%y%m%d` nikki.txt" -->」 ↓SSLが解釈 「grep '^'`date +%y%m%d` nikki.txt」をサーバーのシェルで実行する。 ↓シェルが解釈(1) 「grep '^'030210 nikki.txt」をサーバーのシェルで実行する。 ↓シェルが解釈(2) コマンド「grep」を実行。引数として「^030210」「nikki.txt」を渡す。 ↓grepが解釈 ファイルnikki.txt から、行頭に 030210 がある行を出力する。 ↓SSLが、出力をWWWページの一部として表示する。 日記の今日の分だけ表示される。

参考URL:
http://tohoho.wakusei.ne.jp/wwwssi.htm#Exec
全文を見る
すると、全ての回答が全文表示されます。
  • wolv
  • ベストアンサー率37% (376/1001)
回答No.2

私は、Excel などとの連携についてはあまり詳しくなく、 perl, CGI なども使い慣れてるわけではないのですが、 自動更新は可能だと思います。 Excelで作った日記をCSV(カンマ区切り)で保存する。 この後は、次の2つの方法のどちらかでできます。 方法1: 日記のCSVを含んだHTMLページを作る、その中で、当日分の情報だけを表示するプログラムをJavaScriptで書く。 方法2: WWWサーバーにそのファイルをアップロードする。 WWWサーバーで、CGIでそのデータの必要部分だけ読み込んだページを生成して表示する。 1の長所、余計な日付のデータを表示・送信しない分早いかもしれない。 1の短所、日付が変わるごとに通信が必要。 2の長所、日付が変わっても通信はいらない。PC上にファイルがあればよい。 2の短所、1ページに表示しないデータも含むので、多少おそくなるかもしれない。プログラムとデータが一つのファイルにあるので、そのページの作成が面倒。

全文を見る
すると、全ての回答が全文表示されます。
  • osamuy
  • ベストアンサー率42% (1231/2878)
回答No.1

ExcelのVBAの知識があれば、マクロでHTMLファイルを作成させるとか、 ASPやADOの知識があれば、要求があった時に、Excel Bookにクエリをかけるとか、 Perlの知識があれば、モジュールSpreadsheet::ParseExcelを使って、望みのCGIを作成する ――といった手が考えられます。 ほかにもありそう。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • VBAのデータ抽出(間引き)について

    VBAのデータ抽出(間引き)について 当方VBA初心者なのですが、 VBA(EXCEL2007)を使用してグラフ作成をしようと思っています。 元データの書式は以下の通りでデータ行は30秒間隔で 一カ月分(8万行)あります。 2010/08/01 01:00:34     1112.83 2010/08/01 01:01:04     1110.43 2010/08/01 01:01:34     1111.87 2010/08/01 01:02:04     1112.23 2010/08/01 01:02:34     1112.43 2010/08/01 01:03:04     1112.03 2010/08/01 01:03:34     1110.83 2010/08/01 01:04:04     1112.43 2010/08/01 01:04:34     1110.63 ・・・ データ量が多すぎるので間引きしようと思っています。 間引き(抽出)条件は以下の様に考えています。 10行毎(5分毎)に値の最大値の行を抽出して別シートへコピー。 VBAマクロで処理するにはどの様な コードで実現可能でしょうか? 教えて頂きたく。よろしくお願いします。

  • EXCELでの行の抽出

    sheet1に   A    B    C    D 1 日付 金額  備考  コード 2 01  1000 あいう    1 3 10  2000 えおか    3 4 20  3000 きくけ    4 5 30  4000 こさし    1 . . . という感じで元データ(100行ほど)が入っています。 これを元にしてsheet2に   A    B    C    D 1  1 2 日付 金額  備考  コード 3 01  1000 あいう    1 4 30  4000 こさし    1 . . . というふうに表示したいのです。 sheet2のセルA1に入っているコードと一致するコードが入っているsheet1の行を抽出してsheet2に行の隙間なく表示させたいのです。 こんなことはできるのでしょうか? メニューからコマンドを選択して・・・という方法ではなく、計算式かマクロで実現したいのです。 エクセル2000、Win98です。よろしくお願いします。

  • Excelでデータを抽出

    エクセルでデータベースを作成しました。 このデータベースから目的のものだけを別のシートに抽出したいです。 データベース A ID1 B ID2 C 内容 この内容が100行書かれているとします。 ある20個のIDの内容だけを別のシートに抽出したいのです。 ID1を昇順にならべるとID2は昇順にならないようなIDになっています。 なので、VLOOKUPがつかえません。 ID1から抽出したいもの20個を選んで、シート2へ選んだ内容のID1と内容を抽出 ID2から抽出したいものを20個選んで、シート3へ選んだ内容のID2と内容を抽出 どの様にしたら出来ますか? うまく説明できなくてすみません。 宜しくお願いします。

  • Excelにおけるデーター抽出

    Excelのシートに記載されている内容は次の通りです。 (1) セルA5~A60の間に1~56の昇順の番号 (2) セルB5~B60には氏名 (3) セルC5~C60には○、×、△の記号 このシートからC列が ○ の記号が付与されている者だけの氏名を別のシートのB7~B**の間に抽出するのですが、抽出したシートの行に空白ができないようにするには式をExcel関数で作成することは可能でしょうか? 若し、不可能でしたらマクロで行う場合のプログラムを教えて下さい。

  • マクロでのデータ抽出

    毎月の売上データの一覧から必要なデータのみ抽出して、伝票を作成します。 伝票は明細単位で抽出します。 マクロを組もうとしているのですが、1、2行目のように1案件につき明細が2つある場合があるので、どのようなコードになるのかがわかりません。 コードの中で明細をカウントして、その分だけコピーするような手順になるのでしょうか? また伝票は「分類」ごとに作成します。 こちらは分類ごとにシートを作成し、フィルタにかけたデータをコピーしようと思っています。 マクロは初心者で説明不足な部分がありましたら申し訳ありません。 よろしくお願い致します。

  • エクセル:文字列間の行を抽出

    エクセルファイルで1つのシートに複数の表がひたすら縦に並んでいます。それぞれの表が別々のシートに記載されるようにしたいと思っています。 どの表も基本的な書式は同じなので列数は同じなのですが、行数は表ごとに異なります。 また各表の右下(C列)にTotalという文字列が必ずあります。 文字列Totalがある行の直下の行から次のTotalのある行まで抽出して、シートを作成できれば良いのだと思うのですが、どうすれば可能になるのか分かりません。 どなたか教えていただけ無いでしょうか。

  • 各行のあるカラムのデータを抽出し、1行にまとめたい。

    C939300A CNTLUNIT CUNUMBR=A000,UNIT=3990,UNITADD=((00,64)), X PATH=(31,41),LINK=(FB,FB),CUADD=0 C939300B CNTLUNIT CUNUMBR=A020,UNIT=3990,UNITADD=((00,64)), X PATH=(51,61),LINK=(FB,FB),CUADD=0 という入力データから、1行目のA000、64と 2行目の31、41、4行目の51、61というデータを 抽出して A0006431415161 という1行のデータに書き換える場合、 JAVAではどういうコーディングが考えられるでしょうか。 シンプルなものがいいのですが。 また、Javaではなくアセンブラとか他の言語のほうが 作りやすいでしょうか? プログラミング初心者です。 よろしくおねがいします。

    • ベストアンサー
    • Java
  • 条件に合う行を別シートに抽出

    エクセルで条件に合う行を別シートに抽出したいです。  出荷確認シートとします。     A    B   C    D    E    K    M   N   O     P   抽出列  No.  件名  工事店  出荷  確認  担2  担3  名称   作業列・・・・OKで番号 30行 OK 101-1 ふじ  あああ        OK     松田  みかん    1            以降     101-2 ふじ  あああ              松田  りんご                OK 102-1 ビル  いいい       OK     伊藤  いちご      2            OK 103-1 神社  ううう         OK     神田  アイス     3               103-2 神社  えええ               神田  レモン                    ・  ・    ・       ・      ・    ・     ・         ・  ・    ・       ・      ・    ・     ・        OK   ・  ・    ・             OK    ・     ・       4 上記がSheet1に入力されています。 条件1  ・Sheet1K列 確認でOKを入力された行をSheet2に抽出したいのです。       B   C     D    E    M    N    O            No.  件名  工事店  出荷   担2   担3  名称          101-1 ふじ  あああ            松田   みかん        102-1 ビル  いいい           伊藤   いちご              103-1 神社  ううう             神田   アイス  条件2  ・Sheet1K列 随時OKを入力された行をSheet2に追加           101-1 ふじ  あああ         松田   みかん        101-2 ふじ  あああ         松田   りんご       102-1 ビル  いいい        伊藤   いちご             103-1 神社  ううう         神田  アイス       103-2 神社  えええ          神田  レモン             条件3  ・出荷を確認後はその行を削除しますので、残りのOK分をSheet2に抽出後したもの       101-1 ふじ  あああ         松田  みかん         101-2 ふじ  あああ         松田  りんご       103-1 神社  ううう          神田  アイス とSheet2に表示させたいです。 A抽出列には=IF(B30="","",TEXT(B30,"OK"))を入力し、Sheet1P作業列がK列に OKを入力されるたびに番号が記入され、順序を行頭から若番として、A抽出列とP作業列を参照等 しながらと頭の中ではイメージしていますが・・・。 過去の分を検索したら、似たようなので逆のパターンがありました。 エクセルは2000です。文字位置が上手く合ってないですが 皆様のお知恵をお願いいたします。

  • 特定の文字を含む行だけを他のシートに引き出す方法

    既存の表からA列に「H19」という文字を含む行だけを他のシートにそっくりそのまま引き出したいのですが、関数で実現しようと思った場合どうすればよいでしょうか? 手動でするにも数が多いのと、年度ごとのシートを作成するためH19以前H18・H17と作業を続けるのも大変なので、困っています。 お知恵があればお教えください。

  • データシートから該当するデータのみ抽出するには。

    Sheet(1)に台帳を作成しています。 A列からZ列に以下の様な    A列 B列 C列 D列 E列 F列 G列   項目 仕様 コード 単価 分類1 分類2 分類3 1 2 1270行 程度のデータです。 分類は6分類設定しています。 行に設定しているデータの内容で10種類の項目に大別出来るので、Sheet(2)からSheet(11)に項目別に検索用Sheetを作成し、分類1から分類6をA列からF列に選択方式で表示出来るように、同時に20行の検索用データを入力出来るようにしました。 但し、分類1~分類6の内、分類2~分類6はブランクの場合もあります。 表示された選択値に基づき、Sheet(1)の台帳にマクロで「データ」→「フィルター」→「フィルターオプションの設定」で抽出を行いましたが、Sheet(9)あたりで、「フィルターオプションの設定」が作動しなくなり抽出不可能となりました。 「フィルターオプションの設定」以外の方法でデータを抽出する方法は無いでしょうか。