[[20141024124242]] 『外部csvファイルの取り込み』(スマイル) ページの最後に飛ぶ

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

 

『外部csvファイルの取り込み』(スマイル)

こんにちは。

過去のhttp://www.excel.studio-kazu.jp/kw/20120307175036.htmlを見ましたが
わからないので質問させて頂きました。

外部(D:\output)にあるcsvファイル(ブック名:2014年10月19日東京01実績.csv、シート名:同じ)を、違うフォルダに有るエクセルブックの最後尾に取り込む方法を教えて頂けませんか?

csvファイルは、2014年10月19日東京01実績.csvから2014年10月19日東京20実績.csvまで複数あります。

それぞれのブックに1シートしかありません。

取り込み先のブックには、複数のシートがあるので最後尾に取り込みが出来ればいいです。

うまく説明が出来ていませんが、わかる方がいれば宜しくお願いします。

< 使用 Excel:Excel2013、使用 OS:Windows7 >


 Sub test()
    Dim wkCSV As Workbook
    Dim wkXLS As Workbook
    Dim cFile As String

    Application.DisplayAlerts = False
    Set wkXLS = Workbooks.Open("D:\output\Book1.xlsx")

    cFile = Dir("D:\output\*.csv")
    While cFile <> ""
        Set wkCSV = Workbooks.Open("D:\output\" & cFile)
        wkCSV.Sheets(1).Copy After:=wkXLS.Sheets(wkXLS.Sheets.Count)
        wkCSV.Close
        cFile = Dir
    Wend

    wkXLS.Save
    wkXLS.Close
    Application.DisplayAlerts = True
End Sub
(???) 2014/10/24(金) 14:01

(???)さん、ありがとうございます。

確認しましたが、取り込めませんでした。

また、取り込み先のワークブックは既に開いている状態です。

さらに、そのまま表示しておきたいので、wkXLS.Closeは削除しました。
(スマイル) 2014/10/24(金) 14:24


既にブックを開いているならば、xlsxファイルをオープンしている部分を、以下に変えてみて。

Set wkXLS = Workbooks("Book1.xlsx")
(???) 2014/10/24(金) 14:56


(???)さん

取り込みは出来ました。

あと、既に開いているブック名を可変に出来ますか?

可変というのは日付で、開くブックの名前が日付になっているので

Set wkXLS = Workbooks("Book1.xlsx")のBook1の所を、セルから引用したいと思います。

どうやったら出来ますか?
(スマイル) 2014/10/24(金) 21:58


Sheet3のL1セルに、日付が入力されている場合、

Set wkXLS = Workbooks("Book1.xlsx")の、Book1のところはどのような記述がいいんでしょう?
(スマイル) 2014/10/25(土) 01:09


Sheets("Sheet3").Range("L1") & ".xlsx" とか?
単にファイル名の文字列を指定するだけなので、悩むところではないかと…。
(???) 2014/10/25(土) 07:59

そうか、深く考えすぎていました。

文字列の指定で、出来ました。

ありがとうございました。
(スマイル) 2014/10/25(土) 10:30


コメント返信:

[ 一覧(最新更新順) ]


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