こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

Excelで、別のCSVデータの取り込み方法

Excel2010 で、別ファイルにあるCSVのデータを取り込むにはどうしたらいいでしょう。

たとえば、
temp.txtの内容が以下の1行とします。
りんご,200,5

これを、林檎計算.xlsxを開くと、自動的にtemp.txtを読み込んで
A1~A3に、りんご,200,5 が入るようにしたいのです。

エクセルで「データ」→「外部データの取り込み」→「テキストファイル」で設定し、プロパティで「ファイルを開く時にデータを更新する」としてみても、ファイル(林檎計算.xlsx)を開いただけでは自動で読み込まれず、「更新」などの手続きが必要になります。

この「更新」を押す一手間を省きたいのですがどうしたらよいでしょう。

投稿日時 - 2011-04-07 22:32:39

QNo.6652234

困ってます

質問者が選んだベストアンサー

#3です。質問を完全に見落としてましたm(_ _)m
当方XL2003/2002なので使えるのかわかりませんが
[Alt]+[F11] VBE起動
ThisWorkbook をダブルクリックして
↓をコピペ

Private Sub Workbook_Open()
ActiveWorkbook.RefreshAll
End Sub

添付図はXL2002(実際使用しているもの)

大変申し訳ございませんが、この投稿に添付された画像や動画などは、「BIGLOBEなんでも相談室」ではご覧いただくことができません。 OKWAVEよりご覧ください。

マルチメディア機能とは?

投稿日時 - 2011-04-08 21:10:57

補足

ありがとうございます。
いま2010をいじれない状態なので、また後ほど確認させていただきたいと思います。
VBAは敷居が高くて、なかなか自分から調べて動かすことができませんのでありがたいです。

投稿日時 - 2011-04-09 01:50:14

お礼

どうもありがとうございました。
このVBAでは解決しませんでしたが、むしろ問題であったのは、セキュリティの方でした。お手を煩わせてしまいましてどうもすみません。
別のPCのtxtを読み込んでいたせいか、セキュリティの警告が出ておりまして、「ファイル」→「情報」からアクティブコンテンツに関しての設定を変えると、当初の目的通りに動くようになりました。
大変申し訳ありませんでした。

投稿日時 - 2011-04-12 17:29:19

ANo.4

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(5)

[No.2お礼]へのコメント、

》 実はEXCEL2000では問題なくできていました

テキストファイルの“横”1行を Excel 2000 のワークシートの“縦”1列に「自動的に」「問題なく」取り込めるとは知りませんでした。
ぜひ その手順を教えてください。

投稿日時 - 2011-04-08 22:08:56

補足

あまり縦横意識しないで書いていましたのですみません。
本質的な話しではないのでもうこれ以上書いても仕方ないかもですが、
ご指摘のことについては、たとえばA1~C1に取り込んだ後に、
A2 =B1
A3 =C1
とすると、簡単にA1~A3に入ります。

投稿日時 - 2011-04-09 01:55:06

ANo.3

データ範囲のプロパティ(添付図XL2003)
で [レ]ファイルを開くときにデータを更新する

大変申し訳ございませんが、この投稿に添付された画像や動画などは、「BIGLOBEなんでも相談室」ではご覧いただくことができません。 OKWAVEよりご覧ください。

マルチメディア機能とは?

投稿日時 - 2011-04-08 18:31:05

お礼

どうもありがとうございます。
確かにそれがキーポイントですよね。

質問にも書きましたが、それは確かにチェックしているんです。
なのに、開いた時には更新されない為、やむなく
「データ」→「すべて更新」などをクリックして更新しています。
EXCEL2000ではうまくいっていたのですが。

投稿日時 - 2011-04-08 20:36:02

[No.1お礼]へのコメント、

》 …一部のセルにインポートしたいのです。

質問文の「A1~A3に、りんご,200,5 が入るようにしたい」の「A1」だけに着目して、「ただそのままエクセルに読ませ」ればOKだと早とちりしてました。

何れにしても、1行のテキストをワークシートの「A1~C1」にでなく、「A1~A3」の1列に「自動で読み込」むなんてのは、VBAに頼らない限りは無理難題ではなかろうかと。

投稿日時 - 2011-04-08 02:40:01

お礼

ありがとうございます。
実はEXCEL2000では問題なくできていました。EXCEL2010が悪いのか、新しい環境が悪いのかよく分からないでいます。
たしかにVBAの知識があればできそうなのですが、そこはちょっと敷居が高いんです。

投稿日時 - 2011-04-08 20:32:13

ファイル temp.txt の拡張子「txt」を「csv」に書き替え(リネーム)すればよろしいのでは?

投稿日時 - 2011-04-07 23:19:41

お礼

回答ありがとうございます。
ただそのままエクセルに読ませるのであればそれでいいのですが、別のエクセルのファイルの一部のセルにインポートしたいのです。
わかりにくい書き込みで申し訳ありません。

投稿日時 - 2011-04-08 00:27:35

あなたにオススメの質問