現在、ホームページに設置したデータベース検索CGIに入れてある会員名簿のcsvファイルがあるんですが、
これがエクセルで

会員番号  氏名   郵便番号   住所             TEL
 1   鎌倉太郎 123-0001 東京都中央区架空町2-21-13 03-5123-0125
 2   市原三郎 456-0001 東京都中央区架空町1-51-13 03-5123-0125
 3   山田洋子 789-0001 東京都中央区架空町3-28-11 03-5123-0125
 4   船橋香織 876-0001 東京都中央区架空町4-24-14 03-5123-0125
 5   相模大介 321-0001 東京都中央区架空町5-21-10 03-5123-0125
 6   川崎花子 888-0001 東京都中央区架空町1-11-11 03-5123-0125

と表示されるようになっているとします。
ここに、更新されたデータだけ抽出された

 2   市原三郎 456-0001 東京都新宿区番外町4-55-66 03-5123-0125
 4   浜松香織 876-0001 静岡県三島市新天町5-12-10 052-123-0125
 6   川崎花子 444-0001 千葉県松戸市某乃町5-21-10 047-523-0125

というcsvファイルが友人からメールで届いたとしたら、このデータを読み込むことや、それに準じるいくつかの簡単な操作だけで、同じ会員番号のデータだけ上書きされるようにする事って出来ないでしょうか?

私はエクセルに関しては殆ど無知で、csvファイルを表として見たり、ソートしたりするためにしか使ったことがない人間なので、もし私が望んでいる事が可能でしたら、メニューバーの「○○」から「×××」という項目に入って…などと、ステップを具体的に教えて頂けるとありがたいのですが…。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

あんなアドバイスだけでは無責任な気がするので、一例を…


今回は awk を使ってます。

元ファイルを original.csv、更新データを diff.csv とします。
以下のスクリプトファイルを update.awk として保存します。

--ここから---
BEGIN { FS="," }
{
if ( data[ $1 ]++ == 0 ) {
lines[ ++count ] = $0
number[ $1 ] = count
} else {
lines[ number[ $1 ] ] = $0
}
}
END {
for ( i = 1; i <= count; i++ )
print lines[ i ]
}
---ここまで---

で、プロンプトから
gawk -f update.awk original.csv update.csv > result.csv
で結果ファイル result.csv が出来上がりです。

あ、gawk.exe はどっかから調達してくださいね^^;。

こんな回答をここでしてよかったかな?(>_<)
    • good
    • 0
この回答へのお礼

完璧なお助けのご回答を頂きました!どうもありがとうございました!!
gawkはVectorで簡単に見つかりましたので早速試させていただきましたが、本当ですねぇ、出来てしまいました。
まさに求めていたのはこれです!!
確かに、どなたからもなかなかお答えを頂けなかったのは「エクセルで簡単に」というのが無理ということなんだろうなとは思い初めていました。
しかしまあ、データを整理する時って、こういう処理が必要になることってよくあるような気がするんですが、Excelにはそういう処理をする機能って備わっていないんですね。
Accessとかなら出来るのかなとも少しは思ったんですが、そういうアドバイスもどなたからも頂いていませんしやっぱりダメなんでしょうね。

いやぁ、教えて頂いたスクリプト、他にも、例えばビデオライブラリの管理とか色んな事に流用できそうですし、とてもありがたいです!
私は普段は殆どMacしか触らないのでプロンプトなんて縁のない人間ですが、そんな私でも迷わずに操作できました。
バッチファイルを作ってしまったので、これからは作業は一発。夢のようです。
これだけのヘルプを頂いて、ポイントでしかお答えできないのが歯がゆいですが、この度は本当にありがとうございました!

お礼日時:2001/09/16 01:14

なかなか回答がつかないのは、この作業をEXCELでやらせるにしても


そんな簡単にはいかないからでしょう。少なくともマクロやユーザ関数
が必要になるかと思います。

この程度の文字列操作なら、簡単なスクリプトやアプリケーションを
作ったほうが早いですよ。

前者なら秀丸等のマクロを使う手もありますし、後者ならVBとかPerl
とか…いろいろな方法があると思います。

周りに多少でも開発詳しい人が居れば、頼んでみてはどうでしょう?
(私だったら作ってあげると思います^^;)
    • good
    • 0
この回答へのお礼

こちらのアドバイスにもポイントを付けさせて頂きたいところなのに、良回答と同じ方のお答えに次点って付けられないんですね。
「こうすれば出来ますよ」という簡単な方法が無くても、「そんなに簡単には行かないでしょう」というお答えだけでも頂けたことはありがたいんですが…
それにしても、結果的に本当にスクリプトを書いて頂けるとは!
重ねてお礼申し上げます!

お礼日時:2001/09/16 01:21

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

このQ&Aと関連する良く見られている質問

Q花子を使おうと思っていますが

花子の評価や評判を教えてください
もしあれば
フリーを含む同じ価格帯以下で花子以上の表現能力のあるドロー系ソフトを教えてください
なおOpenOfficeでは花子のように細かい位置合わせはできなかったので挫折しました

Aベストアンサー

フリーソフトでjwキャドは試されましたか?

何に使われるのかを書かれると回答が得られるかも知れません。
カテゴリーを見直すのもいいかも知れません。

Qmicrosoft office03

02は売り払ってしまい、03のインストール版が一つあります。
PCは二台です。一応片方にインストールしてしまい、しかしもう片方の
PCがリカバリが必要な状態になってしまい、こちらにもインストールしなければならないかもしれない状態です。

OFFICEは2台共有させるのは、出来ませんよね。。やっぱり。。

Aベストアンサー

>よくヤフオクなどで売っている、白黒の表紙の物は、製品版ではないですよね。

PCに付属(OEM)された物ですね。
オークションにはよく出ていますが、本来転売禁止の物なのです。
(転売は付属されていたPCとのセットのみ可能)

Qパワーポイント03を使ってます。

パワーポイント03を使ってます。
オーとしぇいぶと使い基本図形を挿入し、文字を入力しようとしてます。
入力のときにARIALのフォントがデフォルト設定になっているようで
毎回ARAIALの文字がでてきてしまいます。
私としてはTIMESNEWROMANをデフォルト設定にしたいのですが、どうしたらよいのでしょうか。教えていただけますか。

Aベストアンサー

パワーポイント03 ← パワーポイント 2003のことですね?
Wordなどのように常に既定のフォントに設定するような機能は無いようです。

テキストボックスまたは図にテキストの追加をしたものを選んで、書式→フォントで半角英数字のフォントを Times New Roman に設定して、「オブジェクトの既定値に設定する」にチェックを入れ[OK]とすることで、そのプレゼンテーションを作成、編集している間はフォントを変更できるようです。
 

Qパワーポイントで表を中央に配置したい

こんにちは。

パワーポイントで作成した表をスライドの中央に配置したいのですが
どうしても上手くいきません。
表全体を選択して中央揃えをクリックしても
セル内の文字がセル内で中央揃えになるだけです。

テキストボックスは図形の調整→スライドに合わせるで
できるんですけど、表はスライドに合わせるをクリックできないです。

OSはWin98、PowerPoint2000です。
よろしくお願いします。

Aベストアンサー

何故かはわかりませんが、できる方法があります。
 
PowerPointの表は、グループ化された図形として作成されています。
まず、このグループ化を解除します。
その後すぐ、「再グループ化」します。
そして、【図形の調整】→【配置/整列】→【左右中央揃え】します。
すると、あら不思議。中央揃えできちゃいます。
 
不具合でしょうね。きっと。

Q-OutLook2003-送信メールをDL出来ない。

いままでYahoo!メールを使っていましたが、OutLook2003で使えるようにしたかったのでさっきセットアップしました。
一応正常にセットアップ出来たのですが、何故か「送信済みメール」だけがYahoo!のサーバーからDL出来ません。僕の技術力の乏しさ故、Googleで検索をかけたのですがそれにマッチしたサイトを見つけることは出来ませんでした。皆様のお力をお貸しいただけないでしょうか?

Aベストアンサー

>何故か「送信済みメール」だけがYahoo!のサーバーからDL出来ません。

これは、過去にWebメールで送信された「送信済みメール」のことですか?
もしそうなら、これをOutlook2003の送信済みのフォルダにDLすることはできないと思いますよ。

また、Outlook2003で送信したメールは、Webメールの送信済みフォルダにも表示されません。その逆も然りです。

受信メールを先にWebで閲覧すると、Outlook2003では受信できません。そうしたい場合はWeb上で未読に戻してください。
Outlook2003で先に受信した場合は、Webメール上でも表示されます。

同じYahoo!メールで私はそういう状況ですが・・・。

質問趣旨の取り違えでしたら、ごめんなさい。


このカテゴリの人気Q&Aランキング

おすすめ情報