• ベストアンサー

Excel97VBA

nishi6の回答

  • ベストアンサー
  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.3

prnで保存した時に、シート名が変わってしまいました。以下のように変更すれば、シート名を元に戻します。 Sub SaveMe()   Dim myPath As String '最初のxlsのパス   Dim myFileName As String '最初のxlsのファイル名   Dim mySheetName As String '保存するシート名(***追加***)   Dim prnFileName As String 'prnファイル名   prnFileName = "2.prn"   myPath = ThisWorkbook.Path   myFileName = ThisWorkbook.Name   mySheetName = ActiveSheet.Name '(***追加***)   'メッセージを出さない   Application.DisplayAlerts = False   'prnでディスクトップに保存   ActiveWorkbook.SaveAs Filename:="C:\WINDOWS\デスクトップ\" & prnFileName, _                           FileFormat:=xlTextPrinter   ActiveSheet.Name = mySheetName '(***追加***)   'xlsで最初のドライブ・フォルダに保存   ActiveWorkbook.SaveAs Filename:=myPath & "\" & myFileName, _                           FileFormat:=xlNormal End Sub

noname#1997
質問者

お礼

ありがとうございました。 おかげで完成しました。

関連するQ&A

  • Excel97VBAで、カレントディレクトリを取得する方法

    Excel97のVBAで、ワークブックの保存ボタンを作成しています。 1.xlsというファイルを、一旦、1.prn(スペース区切りテキスト)でデスクトップに保存し、再度元のディレクトリの1.xlsに上書き保存する。というマクロを作っています。 SaveAsでFileFormatを変更するところまではわかったのですが、元のファイルに上書きする方法がわかりません。 一度、カレントディレクトリを取得して、同じ名前を付けて保存する、という方法になるのではないかと思いましたが、カレントディレクトリの取得方法がわかりません。 宜しくお願いします。

  • EXCEL- VBA(CSVファイル→インポート)

    A列~F列になる複数(100個以上)のCSVファイルをエクセルファイルにインポートして更に個別にエクセルファイルとして保存したいのですが VBAでできるのでしょうか? 記憶マクロでやったらどうにもうまくいきません。 エクセルのVBAについては ほとんど知識ゼロなので困っております。 大変厚かましくありますが どなた様かご教授お願いできたらと思います!! 【元のファイルの状態】   ◆ファイル名「*.CSV」*は文字数それぞれ違います。   <例:tanaka.xls だったり 09福島.xls>  ◆入っているドライブ   TEXT;C:\Documents and Settings\AA_B\デスクトップ\練習  ◆A~F列にデータが入っている 【やりたいこと】    (1)A~F列はカンマ区切りで全て文字列としたい  (2)元のファイル名でエクセルとして保存したい「*.XLS」

  • EXCEL VBAでのCSVファイルの編集

    CSVファイル(ダブルクォーテーション)形式のファイルをEXCEL VBAにて行の編集(削除)をした後、上書き保存をしたらダブルクォーテーション区切りではなくカンマ区切りのCSVファイルの形式になってしまいます。 ダブルクォーテーション区切りのCSVファイルで上書き保存する記述があれば教えて下さい。おそらくEXCELでCSV形式の上書きはCSV2の形式で保存されるみたいです。 困っています。どなたかお助け下さい。

  • EXCEL VBA

    1月から3月までの12シートからなる複数のファイルがあります。 そのファイルを上書き保存したときに書式と値だけをコピーした「ファイル名+シート名」で別ファイルに保存をかけたいのです。 (例) 営業課月次.xlsの4月シートに入力をして、上書き保存をかけた時点で月次4月.xlsにシート名=営業課月次4月で書式と値だけ保存する。 こんな都合のよいVBAがありましたら教えていただきたいと思います。宜しくお願いします。 (VBAに関しては入門編ぐらいの知識しかありません。)

  • EXCEL VBAでカンマ区切りCSVファイルに変換する方法

    EXCELで作成したシートをVBAでカンマ区切りCSVファイルに変換する方法を教えてください 下記のプログラムではXLSファイルで保存されますが、カンマ区切りCSVにする方法が分かりませんでした。 '保存先パス名 NetPath = "V:\AAAA\" ' セルA1 には、ファイル名記入 BkName = ThisWorkbook.Sheets("Sheet1").Range("A1").Text & ".XLS" 補足:マクロを実行した時に自動でネットワークドライブ(V:\AAAA)へ保存、ファイル名はSheet1のセルA1の文字をファイル名として 保存するようにしたいです。 宜しくお願い致します。

  • エクセルのVBAについて

    エクセルのVBAについて教えて下さい。 エクセルのVBAでプログラムを組んでいるのですが、一つわからないことがあるのです。 マクロが実行(オープン)されるファイル名(ファイルパス)をVBAで取得するためにはどうすればいいでしょうか? たとえば、マクロが実行されるファイルがC:\テスト.xlsならば "C:\テスト.xls"を取得したいと考えています。 どなたかご教授お願い致します。 宜しくお願い致します。

  • csv形式のテキストファイルをexcelでCSV化するマクロについて

    今、ひとつのフォルダに大量にCSV形式で保存されているテキストファイルを excelのマクロを使って、ひとつのexcelにCSV形式(.xls)で保存するものを作成している のですが、今までマクロを使ったことがないため、まったく歯が立ちません。 もう少し詳しく書くと、テキストファイルの中身は、 01,54521,18:01:02,110230 というようになってます。 これを、excelのマクロを使い、カンマ区切りで取り込むような感じです。 すみませんが、回答お願いいたします。

  • Excelで指定範囲だけを(.prn)保存する

    Excelで(.prn)(スペース区切りテキストファイル)保存する際、指定範囲だけを保存する方法はないでしょうか?。もちろん、余計な範囲を削除する方法では、他のセル参照などマクロが狂ってくるので、そんな単純な方法ではありません。この機能はロータス123にあった機能で、Excelで色々と試しているのですが、どなたかご存じでしたらご教示をよろしくお願いします。

  • エクセル VBAについて

    初心者ですが、指導してください。 エクセルでVBA・マクロを使用して見積書を作っています。 AファイルとBファイルを順番に開いた状態で使用します。 Bファイルは見積書のテンプレートファイルになっています。 Bファイルで担当者が新しく見積書を作った場合、 ファイル保存というボタンで、指定のホルダ内に任意のファイル名で保存する事が可能になっています。 新しく保存したファイルをCファイルとします。 Cファイルを修正等する場合は、AファイルからCファイルを読み込みます。 Aファイルは、トップページ兼価格リスト表になっています。 ここで問題というか分からなくなっている部分は、 テンプレートファイルであるBファイルの時は、VBAの記述の際に、 Windows("B.xls").Activate と記載していますが、 任意のファイルであるCファイルの時は、 担当者によって、任意のファイル名で保存されているため ファイル名の取得?が必要になると思います。 その場合、どの様な記述をすればいいのでしょうか? なかなか上手に説明できませんが、よろしくお願いします。

  • Excelにテキストをインポートしたのですが

    Excelにテキストファイルをタブ区切りのテキストファイルをインポート →上書き →閉じる 上記の動作をすると再度保存しますかと訊かれます。 上書き保存で保存したはずなのに・・なぜでしょうか?? 自分の予想としては、.txtデータをExcelで開いた状態になっていたので、上書きしたらテキストファイルが更新されただけ。Excelの状態で開いているのにExcel形式で保存してないからもう一度訊かれた。 そんなところでしょうか? 何か他の理由でもあるのでしょうか?