Page 103 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼リストを参照させてファイルを開かせる 初心者 02/9/19(木) 10:51 ┗Re:リストを参照させてファイルを開かせる ななし笛の踊り 02/9/20(金) 9:59 ┗感謝 初心者 02/9/20(金) 11:23 ─────────────────────────────────────── ■題名 : リストを参照させてファイルを開かせる ■名前 : 初心者 ■日付 : 02/9/19(木) 10:51 -------------------------------------------------------------------------
はじめまして、超初心者です。 シート上のリストにある複数のエクセルファイルを開いてテキスト形式で保存したいのですが、どうすればよいでしょうか。 100以上のFILE(エクセルのデータは自動更新)を毎日繰りかえしテキスト変換しなければならないためマクロ登録したいのです。 ちなみにひとつだと以下のとおりでつくってみたんですけど。 名前も保存前と保存後をそれぞれ指定しないといけないため非常に手間がかかります よろしくお願いします。 Sub Macro1() ' ファイルオープン Workbooks.Open Filename:="C:\test\test.xls", UpdateLinks:=3 ' 上書きメッセージ回避 Application.DisplayAlerts = False With ActiveWorkbook .Title = "" .Subject = "" .Author = "" .Keywords = "" .Comments = "" End With ' ファイル保存(テキスト出力) ActiveWorkbook.SaveAs Filename:="C:\test\test.txt", FileFormat:= _ xlText, CreateBackup:=False ' ファイルクローズ ActiveWorkbook.Close ' Excelクローズ Application.Quit End Sub |
▼初心者 さん: >シート上のリストにある複数のエクセルファイルを開いてテキスト形式で保存したいのですが、どうすればよいでしょうか。 >ちなみにひとつだと以下のとおりでつくってみたんですけど。 >名前も保存前と保存後をそれぞれ指定しないといけないため非常に手間がかかります A1:A100にリストがあり、C:\Datas\1001.xls(フルパス拡張子つき)のような形式で入力されているとする。 Sub Macro1() Dim MyXL As String, MyWbook As Workbook, MyR As Range, MyB As Boolean MyB = ActiveWorkbook.Saved ' Application.ScreenUpdating = False Application.DisplayAlerts = False ' For Each MyR In ActiveSheet.Range("A1:A100") MyXL = CStr(MyR.Value) If MyXL = "" Then '処理確認用の着色:セル空白 MyR.Interior.ColorIndex = 6 ElseIf Dir(MyXL) = "" Then '処理確認用の着色:該当ファイルなし MyR.Interior.ColorIndex = 3 Else ' ファイルオープン Set MyWbook = Workbooks.Open(FileName:=MyXL, UpdateLinks:=3) ' ファイル保存(テキスト出力:拡張子のみ変更) MyWbook.SaveAs FileName:=Left(MyXL, Len(MyXL) - 4) & ".txt", _ FileFormat:=xlText, CreateBackup:=False ' ファイルクローズ MyWbook.Close Set MyWbook = Nothing End If Next MyR Application.DisplayAlerts = True Application.ScreenUpdating = True '今回の処理に関してブックの編集を無効にする ActiveWorkbook.Saved = MyB 'きちんと動作しているか確認がとれてから有効にしたほうがいい 'Excelクローズ 'Application.Quit End Sub |
ありがとうございました。 助かります。 膨大な作業にうもれなくてすみます。 感謝♪ |