- ベストアンサー
csvファイルのデーターをファイルメーカーに取り込む方法
PC初級の私です。 どうか、宜しくお願い致します。 ネットショップを運営しております。 受注データーがcsvファイルでダウンロードできるのですが、 それを、ファイルメーカーPRO vol3 にうまく取り込めません。 どうか、ご教示お願い致します。 ●取り込めているのですが、 めちゃくちゃな位置に、好き勝手に羅列した感じです。カンマごとに、フィールドを指定してあげないといけないと思うのですが、 どこで指定できるか、分からず、困っています。 (例:「名前・住所・購入商品名など」→「氏名」の欄にすべて書き込まれている)
- みんなの回答 (8)
- 専門家の回答
質問者が選んだベストアンサー
バージョンアップもFM3→FM7へは、既に期限切れで新たに購入ということになりますね。 サーバ側の対応が期待できないのならば、変換ソフトを利用する手があります。 並びやカンマの数が異なると問題なのですが、 常に一定の並びなのであれば、 フリーソフトの「正規表現置換」を使うとできます。 http://www.vector.co.jp/soft/win95/util/se252054.html これをダウンロードしてフォルダに解凍します。(zipファイル) もし解凍ツールが無いなら、以下定番をお勧めします。 http://www.vector.co.jp/soft/win95/util/se026842.html 解凍して、ソフトが使えるようになったら、 以下の手順で進めます。 元ファイルsales.csv が以下のようだとする。 "ID","名前","商品名","単価","数量" "1","田中","ボール","1000","1" ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"ボールA","6500","1" "2","佐藤","ツリーA","5000","1" ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"ツリーA","6500","1" "3","小川","ボール","1000","1" .... 手順 一応コピーをとっておく。sales2.csvなど。 「正規表現置換」を起動する。 ファイルを開くで選択する。 sales.csv 文字コード:デフォルト 検索:\r\n(,,,,,,,,,,,,,,,,,,,,,,,,,,,,,) 置換:, 「置換実行」をクリックする。 sales.csvをメモ帳で開くと以下のように変更 されている。 "ID","名前","商品名","単価","数量" "1","田中","ボール","1000","1","ボールA","6500","1" "2","佐藤","ツリーA","5000","1","ツリーA","6500","1" "3","小川","ボール","1000","1","ボールB","6500","1" .... これでFMに読み込めるはずです。 一度設定した置換条件は、iniファイルで残っているので 次回からはプルダウンで選べます。 もし、並びが異なるのであれば、その条件に対応した プログラムやマクロを作ることになります。 しかし、実際には非常に手間がかかります。 FM7を購入したほうが安く済むと思います。 参考になりましたか?
その他の回答 (7)
- SUPERS
- ベストアンサー率42% (26/61)
>私のPCでは、 >○「エクスプローラ」-「ツール」を開いても > 「フォルダオプション」という文字は > どこにも見当たりません(T_T) ここで言うエクスプローラは、IE(インターネットエクスプローラ)ではなく、ウィンドウズキー+「E」で 起動する「エクスプローラ」です。 「フォルダオプション」はどのPCにもあります。 >右クリックしても、そのボタン画像を保存する(笑) >はあるのですが、「対象をファイルに保存」すること>はできず、 失礼しました。どうやらHP自体はボタンからのこの操作を禁止しているようです。 (私も出来ませんでした!!) やはり、上記のフォルダオプションしかないかも? では。
お礼
お礼が大変遅くなりました!!! 実は、また苦労しておりました(T_T) 何度も、本当にお手数お掛け致しますが、 どうか、もう少しだけ助けて下さい。 宜しくお願い致します。
補足
すみません!文章内にリンクを貼ってはいけなかったようで、注意を受け、お礼の文章を編集されました。 申し訳ございませんでした(T_T)(先日と同じTESTページに・・・)では簡単に・・・ ●「フォルダオプション」は、見つかりました。本当に有難うございます!! ●保存した受注データーcsvファイルをメモ帳で開けて見ると下記になり、うまくインポートできませんでした。 【例】 "ID","名前","商品名","単価","数量" "1","田中","ボール","1000","1" ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"オーナメント","1500","1" "2","佐藤","ツリーA","5000","1" ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"ツリーB","6500","1" ●上記をSUPERSさんに教えていただきましたとおり、下記のように、メモ帳上で、手直してみるとインポート出来ました。 【例】 ID,"名前","商品名","単価","数量" 1,"田中","ボール","1000","1","オーナメント","1500","1" 2,"佐藤","ツリーA","5000","1","ツリーB","6500","1" ●サーバーの方に尋ねましたところ、 FM3では、バージョンが低いため、無理。FM7.0v3では、うまくいくとの事です。 ●となりますと、結論は FMのバージョンUPが必要ということですね(T_T) そうと思いつつ、師匠SUPERSさんのご意見がお聞きしたく、記入させていただきました。 ●何度もお手数お掛け致しますが、どうか、宜しくお願い致します。
- SUPERS
- ベストアンサー率42% (26/61)
まだうまくいっていないようで、苦労しておられますね。 http://www.aisaika-net.com/TEST.html や 「おちゃのこ広場」でのやり取りも拝見いたしました。 色々と調べてみた結果、同じ現象で苦労した方がいました。 >ちなみにプラウザはIE6.0で、Win XPですが、 >ダウンロードの方法や、保存の方法がおかしいのでしょうか? >保存するときに、先日、記載しました下記の方法 >------------------------------------------------------ >単純に「受注情報をダウンロードする」→「ファイル」→ >「名前をつけて保存」→ファイルの種類を「CSV」にして保存 >------------------------------------------------------ これですと、もしかしてIE上でエクセルを開くということですか? 例えば、以下のようにIEのバグかもしれません。 解決方法は参考にしてください。 http://bbs.hotfix.jp/ShowPost.aspx?PostID=1830 ポイントは、フォルダオプションでCSVのみならず、XLSの拡張子にも 設定するということです。 IE上でEXCELが起動して読み込む時点で、CSVとは認識できないことが 原因しているようです。(恐らく*.TEXTなどと認識してカンマが区切り として認識していない!) したがって、もっと根本的に IE上でEXCELを開かずにダウンロードのみしてファイルに落とす。 そのファイルを改めて、手動でEXCELを起動してから、読み込んでも 1セルに1データが集まってしまう現象がでますか? ぜひ試してください。 (要するにファイルとしてダウンロードして、アプリ起動とファイルの 読み込みは、手動で行えば問題が発生しないはずですが。) もし、上記のページを参照して対応しても、IE上で自動的にEXCELが 起動してしまう場合は、右ボタンクリックの「対象をファイルに保存」 でできませんか? 私的には、上記のページを読み、「絶対にうまくいく」と確信しました。 頑張ってください。 参考になれば。
補足
まさに、この事だと思います!!!! すごい!!!感激です!!! 有難うございます!!!!!!!(;_;) 私のPCも、IE6.0のSP2です。 たしかに「IE上でエクセル」が開いておりましたが、これが普通なんだ~と、 何の疑問も、もっておりませんでした。 こちらのPCでは「IE上でエクセルを開く」以外に 選択の余地はない状態です(+_+) (右クリックも左クリックもききません) 「おちゃのこ広場」でのやり取りまでも 見ていただき、本当にお世話になりっぱなしで、 有難うございます。申し訳なく思うばかりです。 ただ、教えて頂きました http://bbs.hotfix.jp/ShowPost.aspx?PostID=1830 のページで 上記の問題を解決するには、 ------------------------------------- ○「エクスプローラ」-「ツール」-「フォルダオプション」-「ファイルの種類」を開いて 拡張子XLSの詳細設定の「ダウンロード後に開く確認をする」にチェックをつけてください。 ------------------------------------- と教えて下さっているのですが、 私のPCでは、 ○「エクスプローラ」-「ツール」を開いても 「フォルダオプション」という文字は どこにも見当たりません(T_T) これも、なにか設定の問題でしょうか? IEを立ち上げた画面でみたり、 IE上で自動的にEXCELが起動した状態で、試みたりしております。 また >もし、上記のページを参照して対応しても、IE上>で自動的にEXCELが >起動してしまう場合は、右ボタンクリックの「対象>をファイルに保存」でできませんか? と教えていただきましたが、 「おちゃのこ」さんのページの「情報をすべてダウンロードする」というボタンの上に、マウスを置き、 右クリックしても、 そのボタン画像を保存する(笑)はあるのですが、「対象をファイルに保存」することはできず、 左クリックを押すと、 選ぶ余地無く【IE上で自動的にEXCELが起動】 してしまいます(T_T) ふぅ~~ 自分の知識の無さが本当にご迷惑かけてしまい、申し訳ありません。。。 今、一歩。。。と言うところで、 本当に、情けないお話ですが・・・ SUPERSさんには、本当に 手取り足取りのご指導で、 本来であれば、お電話で、お礼をお伝えしたいくらい、感謝しております。 1日も早く、「出来ました!!!」とご連絡できますように、がんばりますので、 どうか、もう少し、後押し、お願い致します。
- SUPERS
- ベストアンサー率42% (26/61)
>左上部に、「受注管理」→「受注一覧を明細」→「受注情報をすべてダウンロードする」 で、サンプルの注文データーをダウンロードできます。 ファイルに保存されたCSVファイル sales.csvを ファイルメーカーで開くとして、新規ファイル(FM3)で、うまく読み込めましたが。 項目数は、f1~f63のフィールド(テキスト)が自動作成され、1レコードが読み込みOK。 これでうまく動作しない場合は、手動にてフィールドを作成した後に、インポートで 読み込みするといいと思います。 また、 >上記の様なエクセルの表で、 とあった表ですが、1行目のIDは、「”」で囲んでください。 また、A列に項目が複数入っていること自体がおかしいと思います。 これはエクセルの表とは言えない、もしくは、1行データが1セルつまり1項目と して扱うことを意味していますので、DB的な扱いは困難です。 上記のサンプルは(1行分しか無いけれど)こんなことはありませんでしたが。 2行目と3行目は、分断されていますね。 これもおかしいです。"お届け先住所"が2行目と3行目に分かれてしまっています。 何かへんな文字コードが入ったのかもしれません。 それと、4行目、5行目、6行目ですが、これはこれで辻褄が合っています。 エクセルで読み込んだとき、下記のようにメモ帳に貼り付けた後、 1 ID,"名前","フリガナ","郵便番号","都道府県","住所",...."単価","数量" 2 4,"【愛彩華】","アイサイカ","111-1324",....,"大阪市田中町1-1 3 たなかハイツ101","111-1111-1111","",....,"16800","1" 4 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"キティお皿[TYSM-HAT]","6300","1" 5 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"くまちゃん[TYPG-150]","10290","2" 6 ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"わんちゃん[TYOS-150]","10290","3" "ID","名前","フリガナ","郵便番号","都道府県","住所",...."単価","数量" 4,"【愛彩華】","アイサイカ","111-1324",....,"大阪市田中町1-1たなかハイツ101",,....,"16800","1" ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"キティお皿[TYSM-HAT]","6300","1" ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"くまちゃん[TYPG-150]","10290","2" ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"わんちゃん[TYOS-150]","10290","3" のように変更してcsvで保存します。 これをエクセルで読み込むと最上行には、各項目が 1行目 ID~ 商品名 単価 数量 となり、 2行目 .... お子様お皿[abc] 16800 1 3行目 空白 キティお皿[TYSM-HAT] 6300 1 4行目 空白 くまちゃん[TYPG-150] 10290 2 5行目 空白 わんちゃん[TYOS-150] 10290 3 のように読み込まれるからです。 意味は、同じお客様で、商品が異なる行が3行あるという解釈が成立します。 しかし、これは、同じお客様であることを読み込むDBに解らせることは出来ないため うまくありません。 1行の内部に商品名1~商品名N、単価1~単価N、数量1~数量Nというふうに 定義したほうが都合がいいと思います。 ざっと見た感じでした。 参考になりましたか?
お礼
いつも早々のご連絡、本当に有難うございます。助かります! さて、 【A列に項目が複数入っていること自体がおかしい】と言うことですが、 やはり、何度試してみても、 その方法でダウンロードされてきますし、 もちろん、サンプルデーターでも、うまくいきませんでした。 ウィンドウズやIEのバージョンは合っていると思うのですが、 今一度、こちらで、確認してみます。 また、連絡させていただきたいのですが・・・ あつかましい者で、本当に申し訳ございません。。。 どうか、宜しくお願い致します。
- SUPERS
- ベストアンサー率42% (26/61)
>TESTの受注データーを作成してみました。 これは読めませんでした。残念。 >「名前をつけて保存する」→CSVファイルを選択し保存 >しております。 CSVファイルに保存しているアプリケーションは何でしょうか? CSVは区切り記号がカンマであり、 数字はそのまま、文字列はリテラル「”」でくくるというのが Windowsでは最も一般的な書式となります。 しかし、多少おかしくても、ファイルメーカーのインポート時に 読み込んでくれるはずです。 インポートのダイアログで左側は常に変更はできません。 右側で読み込むべきフィールドの対応だけが変更できます。 ここまできて、最大の疑問というか、信じがたいのは、 左側には、データ行が1項目のように(まるでカンマを無視した ように)見えるということです。 各データの区切り「,」カンマが全く機能していないなんて。 もしかしたら、フィルター機能が破壊されてしまっている? かと思うほどです。実際、手元にあるファイルメーカーPRO3.0 では "ID","名前","フリガナ","郵便番号" のように1行にするほうが 至難の業で、そのままこのような表示にすることは出来ませんでした。 なおかつリテラル(ダブルクォーテーション)も表示されているとは。 試しに以下をそのままメモ帳にコピーして 拡張子をCSVで保存して、ファイルメーカーでインポートして見てください。 100111,"山田太郎","ヤマダ タロウ","101-1198" 100112,"山川二郎","ヤマカワ ジロウ","102-1197" 100113,"山河三郎","ヤマカワ サブロウ","103-1196" 100114,"山口四郎","ヤマグチ シロウ","104-1195" 私の環境 XP、ファイルメーカーPRO3.0v1、PRO4.0v1では、上記のファイルは正常に下記のように表示され読み込みもできましたが。 100111 →ID 山田太郎 →氏名 ヤマダ タロウ →ヨミ 101-1198 →郵便番号 もしこれでうまく動作しない場合、ファイルメーカー側のインポート処理が破壊されたのかもしれません。 再インストールすべきかもしれません。 その前に環境やバージョンは大丈夫でしょうか? アプリの正式名称とバージョン、OS環境などは?
お礼
先日、「補足する」の方で、 教えていただきましたお礼を申し上げたのですが、 今、見ましたら、うまくUPされていなかったようで、 本当に申し訳ございません(+_+) (狐につままれたような?????) お礼が遅くなって、本当に申し訳ございません(T_T) 改めまして、 「いつも本当に有難うございます。本当に本当に助かっております!!!」 TESTデーターを大変丁寧に作っていただいたお蔭で、 ファイルメーカーに情報を取り込むことができました!!! 本当にありがとうございます。 しかしながら、 うまく取り込めない原因がわかりましたので、 厚かましく、また、また、質問させていただきたく、 下記に記載させていただきました(スミマセン;;;)。 お忙しい所、本当に申し訳ございませんが、 お手すきの時で結構ですので、 どうか、あともう少し、ご教示、お願い致します。 -------------------------------------------- ↓ TESTのデーターを再度、作成してみました!!! http://www.aisaika-net.com/TEST.html 宜しくお願い致します。
- SUPERS
- ベストアンサー率42% (26/61)
CSVファイルが正常に読み込まれていないことが原因です。 CSVの行データがDB上の取り込み認識では、1項目データとなってしまっています。これは、DBから編集操作は不可能です。 恐らくEXCELで読み込んでもきちんとセルへ入らないと思いますが。 すなわち、EXCELでも編集不可。ただし、手修正してEXCELでCSV保存しなおせ ば正常になる場合があります。 CSVファイルそのものを見直しましょう。 原因として、大きく分けて 1)CSVファイルそのものが壊れている 2)異常な文字コードが入っている 3)半角リテラルと半角カンマの対応関係が崩れている などがあります。 該当ファイルをメモ帳などで開いてみてください。 """名前""ふりがな,"""郵便番号","住所""",,,,,,," ",,,,,,"" ↑ ↑ ↑ (多すぎ)(カンマなし) (全角) のような行になっていないかチェックしてみてください。 文字列は、半角""でくくり、半角数字はそのまま、半角カンマで区切ります。 "名前","ふりがな,"郵便番号","住所",,,,,,,," ",,,,,,"" このように "文字列1",,"文字列1",,, な形式でなければなりません。 必ず偶数個の半角リテラル「"」であること 半角リテラル内部にカンマがあるとそれは文字列の一部となります。 例)"文字列,1","文字列2".... 「文字列,1」という文字列が 一項目として読み込まれます。 これらをチェックしますが、メモ帳だとテキスト情報しか無いので 妖しげな空白などが無いかもチェックします。バイナリのコードなどが 入っていたケースでは結果的に「"」や「,」に化けてしまうことがあります。 参考になれば。
お礼
お礼が遅くなり、申し訳ございません!!スミマセン!!! 今回も、丁寧に教えて頂き、本当に有難うございます。 にも関わらず、 あつかましく、再度、教えて頂きたいのです!!! スミマセン(+_+) 具体的に TESTの受注データーを作成してみました。 https://admin.ocnk.net/admin/index.php?go=sales-history-list&page-id=80645456&go=sales-history-down&x=124&y=16 これを、 「名前をつけて保存する」→CSVファイルを選択し保存 しております。 SUPERSさんの説明によりますと、 【必ず偶数個の半角リテラル「"」であること】 とありますが、 いきなり、 IDの項目が「"」で囲まれていないようです。 こちらが、間違えているのでしょうか? そこで、こちらで、「"ID"」と書き加えてみたのですが、やはり、 ファイルメーカーでインポートすると (具体的には) "ID","名前","フリガナ","郵便番号"→氏 ....名 ....都道府県 という感じで、 ....の部分は、→に変更できるのですが、 左側の部分が、 変更できなくなってしまっています。 ファイルメーカーの方の画面も具体的に 見ていただいたほうが いいと思うのですが、 お伝えする方法も分からず、 説明が不十分で、本当に申し訳ございません。 お忙しいところ、本当に恐縮でございますが、 どうか、もうあと一歩、 ご指導、宜しくお願い致します。
- SUPERS
- ベストアンサー率42% (26/61)
あと少しですね。 さて、該当のダイアログには、 左側に CSVファイルのデータが行毎に表示 左下側のデータのスキャンをクリックすると ≪前レコード ≫次レコード になります。 右側に 中央側 チェックボックス : 取り込みするか決める 点線 取り込まない → 左側行のデータを右側フィールドへ取り込み のいずれかが表示 右側 :定義したフィールド名称 ここで、右側のフィールド行の領域にカーソルを移動させるて (ポインタが=の上下に↑↓記号が合成されたような形状になる) 該当行を右クリックして反転表示にさせたまま、上下に移動させます。 左側のCSV行データと対応させたい行位置でボタンを解放します。 例: 左側 中 右側 ...... → 内容1 山田太郎 → 氏名 .... … ..... → 内容2 のようになります。 左側の実際のCSVのデータ項目と右側のフィールドが同一行に対応され かつ、中央側に→があれば、これでOKです。 「新規レコードとして追加する」を選んであれば 「インポート」ボタンをクリックすると データベース内の該当フィールドへ指定したCSVファイルの項目のみが 取り込まれ、CSVの行数分のレコードが生成されます。 これで分かりましたか? 何かあれば補足お願いします。
お礼
見知らぬ私に、こんなにも丁寧にご指導頂き、感謝の言葉もございません。本当に本当に有難うございます。 ただ、教えていただきました点と異なる箇所がございます。 その部分を再度、教えていただけませんでしょうか・・・ お忙しいところ、本当に恐縮ですが、 どうか、あと一歩、宜しくお願い致します。 ---------------------------------------- 左側に CSVファイルのデータが行毎に表示 ということですが、 私のデーターは、下記のようになっております。 どこがおかしいのでしょうか? 左側のデーターが全く変更できません!!! ---------------------------------------- 例: 左側 中 右側 "名前"ふりがな,"郵便番号","住所""... →名前 …ふりがな …郵便番号
- SUPERS
- ベストアンサー率42% (26/61)
ファイルメーカーPro Ver.3であるとして アプリを起動します。 1)ファイル/新規作成 新規ファイルを作成するで ファイル名を入力 新しいDBファイルが作成される 2)フィールド定義が続けて行われる フィールド名 を入力後、タイプを指定して 「作成」ボタンをクリック 指定のフィールドが作成したら 「終了」ボタンをクリック 3)「レイアウト1」が表示される 4)ファイル(F)メニューの インポート/エクスポート レコードのインポート でCSVファイルを指定、「開く」をクリック。 5)フィールドデータのインポート順 ダイアログにて 右側に取り込みたいフィールドの名前が出ています。 左側にCSVファイルの1番目のレコードのデータが 出ています。 右側のフィールドの該当行の部分をクリックしたまま 左側と対応させます。 山田太郎 → 氏名 のような表示になればOKです。 対応させたいフィールド全てに上記作業を行う。 6)右下の「インポート」ボタンをクリックする 7)レイアウト1画面に戻り、レコード数が増えているはず。 以上、参考になれば幸いです。
お礼
丁寧な回答、本当に有難うございます。 もし、よろしければ、再度、 『右側のフィールドの該当行の部分をクリックしたまま左側と対応させます。』 の部分のみ、 もう少し、詳しく教えて頂けませんでしょうか? クリックしたまま、左側に、 ドロップ&ドローしてみたのですが、 何の反応もございませんσ(^_^; どうか、助けてくださいませ!!!
お礼
いつもいつも丁寧に教えて下さり、本当に有難うございます。今回のご提案もすごい!!と本当に頭が下がる思いです。当面は、上記の方法で変換し、その後、インポートして行こうと思います。 長い間、本当に有難うございました。 実は、いつもお返事が楽しみでした。(SUPERSさんは、大変だったと思いますが・・・σ(^_^;) 今回は私にとって大変勉強になりました。 本来であれば、お礼をさせていただきたいところなのですが、それも、こちらのサイトでは禁止されているようですので、残念ですが、 このご恩、しっかりと心に置いて、これからもがんばります!!本当に助かりました。 本当に有難うございました(*^_^*)