• ベストアンサー

エクセルで任意のcsvファイルを指定して関連ずけたい

エクセルでフォームが出来ていて,特定したcsvファイル(ファイル名指定)の指定データ値をフォームに割り当て表示させています.フォームとcsvファイルは別になっています. csvデータファイルのデータの内容はフォームに合わせてあるので考えなくていいのですが,任意のcsvファイルをPCに保存してあり,そのファイルが複数あり選択指定できるようにしたいのですが,お教えいただけないでしょうか.よろしくお願いいたします.

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

  • ベストアンサー
  • arare2005
  • ベストアンサー率31% (63/199)
回答No.3

例えばcsvは1月、2月、3月...の売上げデータで、それをボタンやコンボできれいなフォームで表示したいと言う事でしょうか? 勉強でされているのであれば、時間をかけてVBAで作られるのも良いですが、VBAだとかなり組まないといけませんよネ。 単純に表示をかけるだけなら、1つのテンプレートを作成し該当分のデータを貼り付けた方が、他の人が見たり使ったりする事を考えるとその方が良いかもしれませんよ。 VBAは判ってる人は出来るでしょうけど、判らない人にはデータを加工するのも抽出するのも大変でしょうから... エクセルで複数のbookを同じ様式で保存し、皆さんの回答の通り、表題のbookからでもリンクを張れば宜しいかと思います。 又、bookが複数になるのが嫌なら、1つのbookにシートを沢山保存すれば良いですが...データ量によっては起動が少し重くなるでしょう。 CSVをデータベースとして使用したいのであれば、もっと直感的に作業が出来るアクセスでツールを使いながらSQLなどを勉強された方が良いかもしれません。 アクセスであれば殆どの事は、ツールを使いながら出来ますので... ファイルの入出力を切り替えるだけなら、ボタンで input... や select... で切り替え出来ますので、そちらのヘルプを参考にして下さい。

eijikun
質問者

お礼

ありがとうございます. 質問もよくわからないレベルですので 出直してきます.

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

私も、質問の表現に対し、#1のご指摘と同じ疑問、それ以上の疑問を抱きます。 それぞれの語句は、なじみのものばかりなのに、どうしたいのか良くわかりません。ファイルとソフトを「関連付ける」もよく使う表現ですが、その意味では使ってませんね。こういう場合は理解が混乱します。 >csvファイル(ファイル名指定)の指定データ値を >フォームに割り当て表示 の指定や割り当てが良くわかりません。 >csvデータファイルのデータの内容はフォームに合わせてあるので 合わせてある、とは >任意のcsvファイルをPCに保存してあり 言わずもがなでは。任意とは。 >選択指定できるようにしたいのですが どういう方法で もう一度質問を、表現しなおしてみてください。 これはVBAの質問でしょうね。

eijikun
質問者

お礼

ありがとうございます. 質問もよくわからないレベルですので 出直してきます.

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.1

こんばんは。 そのフォームというのは、具体的には何を指しますか? ユーザーフォームですか?「そのファイルが複数あり選択指定できる」ということは、具体的に、どのような作業を指すのですか?今あるところに、CSVを出すのでしょうか? 単に、ハイパーリンクではいけないのでしょうか?

eijikun
質問者

お礼

ありがとうございます. 質問もよくわからないレベルですので 出直してきます.

関連するQ&A

  • Excelの範囲指定セルににcsvファイルのデータを貼り付け

    Excelファイルの任意のセルにCSVファイルのデータを貼り付けたいと思っています。 各ワークシートにCSVファイルのデータを読み込むマクロを書いて実行していたのですが、ファイルが増えてしまったのでもっと簡単に処理ができたら、と思い相談させていただきます。 Visual C# 2008の勉強を始めて間もないので初歩的な質問かと思いますが、宜しくお願い致します。 希望する処理の流れは 1.「Excelファイル選択」ボタンを押すと、指定のフォルダ内のxlsファイルをリストボックスに表示 2.Excelファイル選択 3.「CSVファイル選択」ボタンを押すと、指定のフォルダ内のcsvファイルをリストボックスに表示 4.Excelファイルに対応するCSVファイル選択 5.「データ読込」ボタンでテキストファイルのデータをExcelファイルの指定のセルに貼り付け 6.Excelファイルを保存して終了 1.と3.のリストボックスへのファイル表示はできているのですが、選択したExcelファイルにcsvファイルのデータの貼り付けの方法がわかりません… それぞれのファイルを変数に格納して、更にcsvファイルのデータを配列変数に流して、繰り返し処理で貼り付けていくのかな?と想像しているのですが… http://support.microsoft.com/kb/302096/ja 上記のページを参考にしたのですが、外部ファイルのデータを指定のセルに入力するにはどうしたらよいのかわかりませんでした。 ・Excelファイルの指定のセルはB12~H1011までの7列1000行です。 ・csvファイルは1000行に満たないこともあります。 ・入力するデータ型は整数と文字列です。 PC環境 Windows XP SP3 Excel 2007 Visual C# 2008 要領を得ない説明で申し訳ありませんが、どうぞ宜しくお願い致します。

  • Excelで、任意のCSVファイルを…

    Excelで、任意のCSVファイルを、特定のシートに丸々貼り付ける、というような事をボタンひとつで処理したいのですが、初心者なものでこまっています。 教えてください。

  • CSVファイルの指定列だけを読み込んでEXCELに表示したい

    EXCELのVBAの .ActiveSheet.QueryTables.Add メソッドを利用する方法で、 (不可能ならば別な方法でもお願いします。) CSVファイルを読み取って、シートに書き込みたいと思ったのですが、 その際、CSVファイル全体ではなくて、特定番目の列だけを読み取って、書き込むことは出来ないでしょうか。 その特定の列の指定を複数にすることも出来ますでしょうか。 もし複数でも可能でしたら、EXCELに書き込むときに、 一列目、二列目、と詰めて書くのではなく、間に空列をはさんだりして、 バラバラに好きな位置の列に、読み取ったそれぞれの列を、書き込むことは出来るでしょうか。

  • csvのデーターファイルから任意の行をエクセルファイルへ入力するエクセ

    csvのデーターファイルから任意の行をエクセルファイルへ入力するエクセルVBA が上手くできません。 6列2000行のcsvデーターのテキストファイルの作成は、色々な参考書があり成功しました。次に このcsvのデーターファイルから任意の複数行をシート4などの任意のワークシートの任意の場所に60行程度をインポートして、この60行の数値データーを加工しようとしていますが、入力が上手くできません。数値データーの加工のプログラムは一応できているため、その様式にあわせて、所定の場所にデーターを入れる必要が有ります。 1列目には日付(シリアルの数値にしています)、その他はすべて数値(LONG型)です。エクセルは2003を使用しています。 VBAの初心者です。宜しくお願いいたします。

  • CSVをエクセルの指定の位置に

    CSV出力したデータをエクセルで読み取るときに エクセルの指定のセルに指定の項目が入るようにしたいのですがどうすればいいのでしょうか? CSVデータをそのまま読み込むと項目が並んで表示されてしまいます。 エクセルで作ったフォーマットにCSVデータを反映させて印刷したいのです。

  • エクセルでシート名のCSV形式ファイルの一括複数保存

    エクセルで編集した複数のシートをそれぞれのシート名でCSV形式ファイルとして保存するにはシートを開いてはファイル名を指定してCSVで保存という操作をシート分だけしなければならないのですが、これを少ない操作で行う事は可能でしょうか。たとえばシートを複数選択して、CSV形式だけを選択して一括で保存するとかです。

  • CSVをエクセルの指定セルへ、または専用ソフト

    CSVで出力したデータをエクセルで読み取る場合に、エクセルの 指定セルに、指定の項目が入るようにしたいのですが方法はあるのでしょうか。 CSVデータをそのまま読み込むと項目が並んで表示されてしまいます。 エクセルで作ったフォーマットにCSVデータを反映させて印刷したいのです。 また特にエクセルにはこだわりません、専用ソフトを使ってもいいので、自分で作ったフォームに自動で入ることが目的です。 詳しい方がいらっしゃいましたらアドバイスよろしくお願いいたします。

  • 【Excel】Excelで作ったファイルをCSVで保存するには?

    超初心者な質問ですみません。(>_<) Excelで作成したファイルをCSVで保存したいんです。 (1)Excelファイルを開く。 (2)「名前をつけて保存」を選択し、ファイル名のお尻にYYYYMMDDをつけ(Product_20050901.csv)、「ファイルの種類」を「CSV(カンマ区切り)」にして保存する。 (3)指定フォルダにCSVファイルが作成される。 (4)出来上がったCSVファイルを開こうとすると、「SYLK:ファイル形式が正しくありません」という警告が出てファイルが開かない。 という現象が起きてしまいます。 何がいけなかったんでしょう? どうしたらCSVで保存できますか?教えてください!

  • エクセル マクロでのエクセルファイル取込について

    エクセルで別のエクセルファイルをマクロで取込み、取込したデータを自動で任意の場所にデータが入力されるようなものを作りたいと考えています。 csvデータの取込は作ることが出来たのですが、エクセルファイルをcsvデータのように取込することは出来ないでしょうか? 出来ないとしたら、取込したいエクセルファイルを一度csvで保存してからcsvとして取込するというやり方で対応するしかないでしょうか? 出来れば、取込したいエクセルファイルのシートが複数にわかれていて、全シートの情報を取込したいと考えているので、エクセルのままで全シート取り込めれば・・と思います。 何か上記の方法でなくとも、最善の方法(一番工数が少なく済む方法)があれば教えていただきたいです。 よろしくお願いします。

  • エクセルでCSVファイルをユーザーに選択させたい

    エクセルVBAで、特定のフォルダ(C:\Data)に入っているCSVファイルをユーザーに選択させたいのです。 ただ、その際、選択肢に表示させるファイルに、例えば”企画“という文字列があることを条件にしたいのです。 組み込みダイアログであれば OpenFileName = Application.Dialogs(xlDialogOpen).Show("C:\Data\*企画*.csv") で大丈夫だと思います。 しかし、組み込みダイアログでは実際にそのファイルがエクセルで開かれてしまい、先頭の数字の0が消える等の不都合が起きてしまいます。 そのため、ファイルは指定させますが実際には開かずファイル名だけを取得する Application.GetOpenFilenameを使おうと思いました。 これでファイル名さえ所得できればあとは外部データの取り込みでCSVデータを取得できます。 ところが、 OpenFileName = Application.GetOpenFilename("C:\Data\*企画*.csv") はエラーになってしまいます。ネットで検索すると、Application.GetOpenFilenameではファイル名にワイルドカードは使えないようです。 このような場合、どのような方法をとればよいでしょうか?

専門家に質問してみよう