[[20171003164511]] 『シートをテキスト化』(南雲) ページの最後に飛ぶ

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

 

『シートをテキスト化』(南雲)

マクロでexcelのシートのA列をテキスト化することは可能でしょうか?
テキストの保存場所はexcelのブックと同じ場所で、テクスト名は「data.txt」という固定の名前にしたいです。

調べてみたのですが、あらかじめテキストを作成しておく方法しか見つけられませんでした。

よろしくお願いします。

< 使用 Excel:unknown、使用 OS:unknown >


 1) シートタブを右クリックして[移動またはコピー(M)]
 2) (新しいブック) - コピーを作成するにチェック -[OK]
 3) 新しいブックが立ち上がるのでA列以外を削除して、textファイルで保存。

 これをマクロの記録をすればよいのでは?
(seiya) 2017/10/03(火) 17:05

アドバイスありがとうございました。

seiya様の案を参考に作成してみたのですが、今度は下記のエラーが出てしまい作成できませんでした。

エラー,1004
読み取り専用のため、アクセスできません。

このようなエラーが出てしまう場合どのように対処すればよろしいのでしょうか?
よろしくお願いします。

Sub テキスト化()

    Application.DisplayAlerts = False

    Sheets("Sheet2").Copy
    ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\data.txt", FileFormat:=xlText
    ActiveWindow.Close

    Application.DisplayAlerts = True

End Sub

(南雲) 2017/10/04(水) 09:19


     Sheets("sheet2").Copy
     ActiveWorkbook.Sheets(1).Columns("b").Resize(, Columns.Count - 1).Delete
     ActiveWorkbook.SaveAs ThisWorkbook.Path & "\data.txt", xlText
     ActiveWorkbook.Close False

 ↑こんな感じで WithでActiveWorkbookを参照すれば↓

     Sheets("sheet2").Copy
     With ActiveWorkbook
         .Sheets(1).Columns("b").Resize(, Columns.Count - 1).Delete
         .SaveAs ThisWorkbook.Path & "\data.txt", xlText
         .Close False
     End With
(seiya) 2017/10/04(水) 09:32

ご回答ありがとうございます。

いただいたコードを試してみたのですが、かわらず

data.txtは読み取り専用です。アクセスできません。

と表示されてしまいました。

こちらのコードを使用する際マクロテンプレートとして保存しているブックを開いて使用しているのがいけないのでしょうか?

よろしくお願いします。
(南雲) 2017/10/04(水) 09:44


 テンプレートを開くと拡張子なしで開きますよね?
 一旦保存しないとThisWorkbook.Pathがしようできませんよね?

 その辺はどうなってますか?
(seiya ) 2017/10/04(水) 10:18

コメント返信:

[ 一覧(最新更新順) ]


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