VisualBasicで作成したCSVファイルをエクセルに取込み、ファイルの値を表示したいと考えています。

このとき、エクセルには既に枠(?表といった方がいいでしょうか?)が表示されており、CSVファイルのこの値は、表のこのカラムに表示すると言ったことがしたいのですが、どんな風に進めたら良いのか、全然イメージ出来ません。

こんな項目で調べたら?とか、こんな風に進めたら?とか、何かアドバイスをお願いします。

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

A 回答 (4件)

VBAですが、こんなのが役にたちますでしょうか。


3列のデータを仮定してます。
Sub test01()
Open "c:\My Documents\aaa.csv" For Input As #1
i = 1
While EOF(1) = False
Line Input #1, a
c = Split(a, ",")
Cells(i, "A") = c(0)
Cells(i, "B") = c(1)
Cells(i, "C") = c(2)
i = i + 1
Wend
Close #1
End Sub
----
または
Sub test02()
Open "c:\My Documents\aaa.csv" For Input As #1
i = 1
While EOF(1) = False
Input #1, a, b, c
Cells(i, "A") = a
Cells(i, "B") = b
Cells(i, "C") = c
i = i + 1
Wend
Close #1
End Sub
でも良さそう。
ただVBの中からVBAを呼び出すことはできると思うので、勉強してください。
    • good
    • 0
この回答へのお礼

~回答者の皆様~

結局、CSVからの読み込みはマクロを使って。
集計シートの作成は、各カラムに条件を入力しておくという方法にしました。
色々ありがとうございました。
参考になりました!

お礼日時:2003/12/15 18:32

CSVの取込み自体は、通常、CSVファイルがExcelに関連付けされていますので


CSVファイルをダブルクリックすれば開けます。
罫線等はデータのある行の数に応じてマウスで指定して引く方が早いと思います。
列の幅を文字数に合わせて調整するには、左上の角をクリックしてシート
全体を指定(反転)させてから、AとBの境界線あたりをダブルクリックすると
全体が自動で調整されます。

やりたいことはもっと違うことなんでしょうか?

この回答への補足

EXCELには既に枠組みを作っておきたいのです。
(月毎に出力する何かの集計表のようなイメージを持っていただければ、多分私と共通のイメージが出来るのでは。と考えるのは、一方的ですかね…)

すごくざっくりした例を挙げると、下記のようになります。

-----------------------------------------
着信総数|内訳a |内訳b |比率b/a
600   |400 |200 |50%

電話 |メール|×××|○○○
200 |200 |100 |100
-----------------------------------------

ここで、「着信総数」「内訳a」「内訳b」「比率b/a」や「電話」「メール」「×××」「○○○」は、固定項目で、データを取り込まないうちから表示させておくものです。
数値の部分がCSVから読み込みたい値になります。
ただし、「50%」は、EXCEL上で自動的に計算させたいです。

こういったことがしたいのですが、どうでしょうか?
イメージ、伝わったでしょうか?

補足日時:2003/10/30 13:52
    • good
    • 0

 CSVファイルですから、カンマ(、)で区切られたデータは、Excelの各セルに自動的に入ります。


 単純にカンマで区切ったデータは横並びに、CRLF(Enter)で区切られれば、縦並びに入ってきます。

 読み込む時には、ファイルの種類をテキストファイル(*.rpn、*.txt、*.csv)を選択しましょう。
    • good
    • 0

こんにちは。

maruru01です。

Excel2000で回答します。
メニューの[データ]→[外部データの取り込み]→[テキストファイルのインポート]でウィザードを起動させると、最後に取り込む場所を指定出来ます。

また、VBが出来るのでしたら、ExcelVBAも扱えると思いますので、VBAでOpenステートメントでファイルを読み込めば、いろいろ応用がききます。
    • good
    • 0
この回答へのお礼

結局、一旦マクロを記録してから、他にやりたい処理をVBAで行うことにしました。
ありがとうございました。

お礼日時:2003/12/15 18:29

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


人気Q&Aランキング