[[20060921143211]] 『CSVからインポートしてグラフ作成』(くっきー) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『CSVからインポートしてグラフ作成』(くっきー)

初めまして。以前からここを使って勉強していましたが、
聞きたいこと・・・というか、つまってしまったので助けてください。

以下のようなCSVファイルがあるのですが、

場所 作成者 月日

A  Bさん 2/6

A  Cさん 2/7

B  Bさん 2/8

C  Bさん 2/9

A  Cさん 2/10

C  Cさん 2/11

これをエクセルにインポートして、作成者ごとに以下のような表にして、

作成者 A  B  C

Bさん 1   1  1

Cさん 2   0  1

これを作成者ごとにグラフにしたいのです。

そこで、下記のコードを考えて、インポートまでの手順をやったのですが、
場所の1列しか出ませんでした。

Private Sub Workbook_Open()

    Dim filetoOpen
    Dim keyrng     As Range
    Dim sourcefile As String
    Dim dfn        As Long
    Dim mystr      As String
    Dim i          As Long
    Dim v

    filetoOpen = Application.GetOpenFilename("テキスト ファイル (*.*), *.*" & "csvファイル (*.csv), *.csv,")
    If filetoOpen = False Then
       MsgBox "ファイル選択がキャンセルされました。"
          Exit Sub
    End If

    Set keyrng = Worksheets("Sheet3").Range("a1")
    sourcefile = filetoOpen
    dfn = FreeFile
    Open sourcefile For Input As dfn
    Do While Not EOF(dfn)
    Line Input #dfn, mystr
        mystr = Replace(mystr, Chr(34), "")
        v = Split(mystr, Chr(44))
        keyrng.Offset(i).Value = v
        i = i + 1
    Loop
    Close #dfn
End Sub

どうしたらいいでしょうか?

また、ここからどうやったらVBでグラフを作る事ができるでしょうか?
オートフィルタとかも考えたのですが、いまいちよくわかりませんでした。
ヒントでもよいので、教えてください。


 こんにちは。

 指定しているセルが一つだけですよね?
 その部分をRange("A1:C1")
 とか

 Range(c, c.Offset(0, 3)) = n
 c.Resize(, 6) = n

 などとして幅を指定してあげるとうまくいくと思います。

 あと。何かもう一つ方法があったような気がするんですがf^^;
 忘れてしまいましたw

 探してみてくださいmm

 (Null)

ありがとうございます!
その部分を増やせばよかったんですね。
Range(B1)とかやってみてはいたのですが、A列の内容ががB列に移っただけだったのでそこじゃないと思っていました。
これからもっと勉強していきたいと思います。

作成者を抽出してグラフを作る方やり方は・・・とりあえず考えてみます。
オートフィルタであってるのでしょうか・・・


 >作成者を抽出してグラフを作る方やり方は・・・とりあえず考えてみます。オートフィルタであってるのでしょうか・・・ 

 こんにちは。
 もし自動でということならば。
 グラフの元となる数値専用のシートを作ってそこに必要な情報だけをコピーしていくってのはどうでしょうか??
 マクロや関数を使って元になるシートとコピーされたシートをリンクさせておけば。運用も楽になるかもしれないです。
 (↑に書いてあること何いってるかよくわからないですねf^^;理解してくださいmm)

 (Null)

Nullさん、返答ありがとうございます。
おそらく、Nullさんの教えてくださった方法に近い形でできました。
自分なりに解釈したので微妙ですが。

何はともあれ、ありがとうございました。
(くっきー)


コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.