はじめまして、宜しくお願いします。
VB6.0でエクセルを使っています。
Set xlBook = xlApp.Workbooks.Open(xxx.csv)
Set xlSheet = xlZenBook.Worksheets("シート名")
xlSheet.Range("A1:Z1").Select
Selection.Copy
上記のようにcsvファイルを開いて
シートの"A1:Z1"をコピーして別に開いたxlsファイルに
貼り付けしたいと思います。
xlSheet.Range("A1:Z1").Select
のところでselectメソッドに失敗しました。
というエラーが出てしまいうまくいきません。
ブックをxlsファイルにするとエラーにはなりませんでした。
CSVファイルではほかに何か良い方法はありますか?
CSVファイルは、Excelと関連付けられているかもしれませんが
もともと、メモ帳などで開けるテキストファイルなので、
読込みの方法は、txtファイルと同様の方法で問題ありません。
http://hanatyan.sakura.ne.jp/vbhlp/txt01.htm
もともとシートという概念のないファイル形式なので
エラーとなるのでしょう。
書き忘れましたが、
CSV(テキスト)ファイルを読み込んで
Excelに書き出す。というやり方になると思います。
ただ、この場合、CSVのデータを持ったxlsファイルになりますが・・・。
個人的には、CSVファイルをExcelで開く行為自体に
生理的ともいえる拒絶反応がありますが・・・。
コピーしたい位置が A1:Z1ということはCSVでいうと1行目だけを別のエクセルにコピーしたいということでいいのでしょうか?
エクセルのブックを2つ開くことが必須でなければ、CSVファイルを1行読み込
んで、Split(",")で 「,」ごとに区切って配列に格納して、それをエクセ
ルのブックに書き込んでいくという方法はどうでしょうか?
もしくはVBからはエクセルを開く動作だけ行い、エクセルのマクロで区切り文字を「,」で外部データの取り込を行えばエクセルでCSVファイルを開けると思います。
いなさん、ひよこさんありがとうございます。
テキストファイルとして読み込んでエクセルに
貼り付ける方法でやってみようと思います。
ありがとうございました。
編集 削除