[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『自分で保存したブックを開くとファイル形式と拡張子が一致しない。』(くろ)
いつもお世話になってます。
自分で保存したブックを開くとファイル形式と拡張子が一致しない。
と出る原因をご教授ください。
Sub 保存()
Dim fileName As String
fileName = ThisWorkbook.Path & "\" & "D040" & ".xls"
Range("A1:F96").Copy
Worksheets.Add 'コピー先シート追加
With ActiveSheet.Range("A1")
.PasteSpecial xlPasteValues .PasteSpecial xlPasteFormats .PasteSpecial xlPasteColumnWidths 'コピー先シートに値をペースト End With Rows("1:1").RowHeight = 19.5 Rows("2:96").RowHeight = 18.75 With ActiveSheet.PageSetup .LeftHeader = "" .CenterHeader = "詳細表" .RightHeader = "&D" End With ActiveSheet.Move 'コピー先シートを新しいBookに ActiveSheet.Name = "D040" ActiveWorkbook.SaveAs fileName '名前をつけて保存 ActiveWorkbook.Close False '保存したので保存せずに閉じる End Sub
< 使用 アプリ:、使用 OS:Windows7 >
参考HPです。
http://excwlvba.blogspot.jp/2013/04/xlfileformat.html
http://excwlvba.blogspot.jp/2013/04/workbooksaveas.html
(カリーニン) 2015/08/28(金) 18:01
SaveAs で FileFormat を省略すると、現在稼働中のエクセルバージョン用のブックとみなされて保存されます。
たとえば新規ブックを Excel97-2003ブック形式で名前を付けて保存、これをマクロ記録してみてください。 xlsブックにふさわしい FileFormat付のコードが生成されますので、それを参考に。
(β) 2015/08/28(金) 18:06
(くろ) 2015/08/29(土) 18:02
(くろ) 2015/08/29(土) 18:02
csvでも保存したいのですが、FileFormatをxlCSVにした場合、文字前後の""が消えてしまいます。
ActiveWorkbook.SaveAs FileName:=FileName, FileFormat:=xlCSV
下記の保存方法だと上手くいくので、同様に保存にするにはどうしたらいいですか?
FileName = Application.GetSaveAsFilename(FileName, "テキスト ファイル (*.csv), *.csv")
これがダメなのは都度アプリケーションが立ち上がる。
(くろ) 2015/08/29(土) 18:14
また、
>下記の保存方法だと上手くいくので、同様に保存にするにはどうしたらいいですか?
>FileName = Application.GetSaveAsFilename(FileName, "テキスト ファイル (*.csv), *.csv")
それは単に保存するファイルの名前を変数にいれているだけで、
実際の保存を目的としたものではありません。
>これがダメなのは都度アプリケーションが立ち上がる。
ファイル選択のための画面になっているということ?説明が必要です。
質問自体をもっと練ってください。
(γ) 2015/08/30(日) 13:47
分かり難くて申し訳ないです。
新しいスレッド立てさせてもらいます。
(くろ) 2015/08/31(月) 15:44
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.