Excelノート 2-1 保存 

HOME  検索  索引  もくじ  関数目次ージへ        次ページへ

タイトル欄のアドレスは、エクセルファンクラブの該当する頁へのリンク先です。
詳しい事は、こちらの
お願いをご覧になってください。

1  自動保存で、常に確認メッセージの表示をしないようにするには?
2  ファイルを保存せずに閉じるには?
3  一部のブック以外の、複数のブックを保存しないで閉じるには
4  ファイル名を「今日」の日付で保存するには
5  『ファイル名を付けて保存』の『ファイル名』のリストにセルの値を表示するには
6  自動でバックアップファイルを作るには
7  全てのシートを、1シートづつ他のファイルに、そのシートの名前で保存するには?
8  基本フォームを、自動的にナンバーリングして新規ファイルで保存するには?
9  変更していないブックを閉じる際、保存を確認するメッセージが出てしまいます

1 自動保存で、常に確認メッセージの表示をしないようにするには?
http://www.keep-on.com/~excelyou/2000lng5/200009/00090073.txt
 「自動バックアップの設定」 【その他】
http://www.keep-on.com/~excelyou/2000lng1/200005/00050001.txt
 「自動保存で、常に確認メッセージの表示をしないようにするには?」 【編集】
Excel2000
再起動の際、 設定が保持されないという不具合がありましたが、
Office 2000 Service Release 1 (SR-1) で、修正されました。
 [XL2000] 自動保存アドインの設定値が保持されない
  http://www.microsoft.com/japan/support/kb/articles/j049/0/31.htm
 Office 2000 Service Release 1 (SR-1) アップデート - 日本語版のダウンロードの詳細
  http://officeupdate.microsoft.com/japan/downloadDetails/2000/O2kSR1DDL.htm
Sub AUTO_OPEN()
 Application.OnTime Now + TimeValue("00:10:00"), "AUTO_OPEN"
 ActiveWorkbook.Save
End Sub

  このコードの使い方は、マクロの使い方(1)標準モジュールにあります。
  (ただし、上記のマクロの使い方で、4番目の「Alt+F8 でマクロ名を選んで、実行します」は、必要ありません。)
TimeValue("00:10:00")で10分毎ですが、()内の時間を変えてやれば
好みの間隔で
確認メッセージ無しで保存します。
ただし、このマクロではアクティブなBOOKだけが保存されます。
2 ファイルを保存せずに閉じるには?
ThisWorkbookのモジュールに
 Private Sub Workbook_BeforeClose(Cancel As Boolean)
  ThisWorkbook.Saved = True
 End Sub

ブックが閉じる前に、「セーブされていますよ」、という情報を送っています。
また、ペーストしたあと、保存するのを忘れてそのまま閉じると、この設定まで保存されません。
  このコードの使い方は、マクロの使い方(3)This Workbookのモジュールにあります。
Excel97、Excel2000 共通
一旦ファイルを閉じて、エクスプローラからファイルのアイコンを右クリック、
プロパティ、全般、読み取り専用にチェックを入れる。
3 一部のブック以外の、複数のブックを保存しないで閉じるには
ファイル1とファイル2以外を、保存しないで閉じます。
Sub Macro1()
 Dim wbTarget As Workbook
 For Each wbTarget In Workbooks
  If wbTarget.Name <> "ファイル1.xls" And wbTarget.Name <> "ファイル2.xls" Then
   wbTarget.Close SaveChanges:=False
  End If
 Next wbTarget
End Sub

  この使い方は、マクロの使い方(1)標準モジュールにあります。
4 ファイル名を「今日」の日付で保存するには
http://www.keep-on.com/~excelyou/2000lng5/200012/00120085.txt
 「BOOKタイトルを日付に変えて保存するには?」 【その他】
Sub test()
 Dim Filename As String
 Filename = Format(Date, "yyyy年mm月dd日") & ".xls"
 ActiveWorkbook.SaveAs "C:\My Documents\" & Filename
End Sub

Sub test2()     '保存先を指定しないとカレントフォルダに保存します
 ActiveWorkbook.SaveAs Format(Date, "yyyy年mm月dd日") & ".xls"
End Sub


  このコードの使い方は、マクロの使い方(1)標準モジュールにあります。

5 『ファイル名を付けて保存』の『ファイル名』のリストにセルの値を表示するには
Sub test2()
 Dim strName As String, fName As Variant
 'A1の値を変数に代入
 strName = ThisWorkbook.Worksheets(1).Range("A1").Value
 'A1の値が空の場合、現在のブック名を代入
 If strName = "" Then strName = ThisWorkbook.Name
 '名前を付けて保存] ダイアログ ボックスを表示
 fName = Application.GetSaveAsFilename(InitialFilename:=strName, fileFilter:="Excel(*.xls), *.xls")
 'ファイル名を取得したら保存
 If fName <> False Then ActiveWorkbook.SaveAs fName
End Sub
  このコードの使い方は、マクロの使い方(1)標準モジュールにあります。
6 自動でバックアップファイルを作るには
http://www.keep-on.com/~excelyou/2000lng5/200009/00090073.txt
 「自動バックアップの設定」 【その他】
Excel2000
名前を付けて保存 → ツール → 全般オプション
→『バックアップファイルを作成する』にチェック → OK
そうすることによって、以後は常に二世代のファイルが
残りますので、間違って上書き保存をしてしまっても安心です。
この方法では同一フォルダにバックアップファイル(*.xlk)ができますので
Excel97
名前を付けて保存 → オプション →『バックアップファイルを作成する』にチェック → OK
7 全てのシートを、1シートづつ他のファイルに、そのシートの名前で保存するには?
http://cgi.fuji.ne.jp/~fj2094/cgi-bin1/wwwlng.cgi?print+200106/01060093.txt
 「複数シートをファイルに分けるには?」 【編集】
全てのシートを連続して、カレントフォルダに保存します。
 Sub Sheet_F()
     With Application
         .SheetsInNewWorkbook = 1
         .ScreenUpdating = False
     End With
     For i% = 1 To Worksheets.Count
        x$ = Worksheets(i%).Name
        Worksheets(i%).Copy
        With ActiveWorkbook
            .SaveAs x$ & ".xls"
            .Close True
        End With
     Next i%
     Application.ScreenUpdating = True
 End Sub
  このコードの使い方は、マクロの使い方(1)標準モジュールにあります。
8 基本フォームを、自動的にナンバーリングして新規ファイルで保存するには?
http://cgi.fuji.ne.jp/~fj2094/cgi-bin1/wwwlng.cgi?print+200109/01090025.txt
 「ナンバーリング機能を持ったフォームを作るには?」 【編集】
1. 基本フォーム(名前は何でも構いません)の「Sheet1」が見積書だとします。
2. 見積番号は、「Sheet1」の「H1」セルで管理してます。
3. 保存先は、基本フォームの直下(同じフォルダ内)に「MMDATA」の名前でフォルダを作ります。
4. 見積書の番号は5桁で、XXXXX(連番)としています。
5. シート1H1のセルの書式は、00000としています。
  (【書式】【セル】【ユーザー定義】で、【種類】の欄に、「00000」と入れます)
6. 一番最初にマクロを実行する際に、H1に「1」を入力してください。「00001」で表示されます。
7. 下記のコードを実行すると、「MMDATA」フォルダ内に、00001.xlsファイルが保存され、
  H1セルの値が「00002」に更新されます。

Sub test2()
 Dim strPathName As String
 Dim strPathBook As String
 Dim strPathBHit As String
 Application.ScreenUpdating = False
 With ThisWorkbook
  strPathName = .Path & "\MMDATA\"
  strPathBook = strPathName & Format(.Sheets("Sheet1").Range("H1").Value, "00000") & ".xls"
  strPathBHit = Dir(strPathName, vbNormal)
  '次の7行で、既存の見積書番号を検査し、同じ番号があればメッセージを出し終了します。
  Do While strPathBHit <> ""
   If strPathName & strPathBHit = strPathBook Then
    MsgBox strPathBHit, vbCritical, "既に同一の見積番号が存在します"
    Exit Sub
   End If
   strPathBHit = Dir
  Loop
  '次の8行で、見積書の転送・保存・クローズをしています。
  Application.DisplayAlerts = False
  Workbooks.Add
  With ActiveWorkbook
   ThisWorkbook.Sheets("Sheet1").Cells.Copy .ActiveSheet.Range("A1")
   .SaveCopyAs Filename:=strPathBook
   .Close
  End With
  Application.DisplayAlerts = True
 '次の3行で、番号のカウントアップしています。
  With .Sheets("Sheet1").Range("H1")
   .Value = .Value + 1
  End With
  '次の行で、A3:D10をクリアしています。
  .Sheets("Sheet1").Range("A3:D10").ClearContents
  .Save
 End With
 Application.ScreenUpdating = True
End Sub
  このコードの使い方は、マクロの使い方(1)標準モジュールにあります。

9 変更していないブックを閉じる際、保存を確認するメッセージが出てしまいます

http://cgi.fuji.ne.jp/~fj2094/cgi-bin5/wwwlng.cgi?print+200112/01120040.txt 
 「変更を加えていないのに保存を確認メッセージを表示しないようにするには?」 【その他ラウンジ】
http://cgi.fuji.ne.jp/~fj2094/cgi-bin1/wwwlng.cgi?print+200205/02050160.txt 
 「ハイパーリンクでリンク元のブックを表示するには」 【編集ラウンジ】
http://cgi.fuji.ne.jp/~fj2094/cgi-bin5/wwwlng.cgi?print+200205/02050085.txt 
 「“閉じる”が普通に閉じない。」 【その他ラウンジ】
[XL2002] 変更していないのに保存を促すメッセージが表示される
Excel 2002 は、デフォルトでは、以前のバージョンの Excel で最後に保存されたファイルを再計算します。

[XL95]変更していないブックを閉じる際保存するか尋ねられる場合

【原因1】 ファイルを開いたときに再計算が走るような関数がある場合
      【対策】 [ツール]-[オプション]-[計算方法]-[手動にチェック]を入れます
【原因2】 次の関数はブックが開かれたと同時に再計算されます。
       AREAS CELL COLUMNS INDEX INDIRECT NOW OFFSET ROWS RAND TODAY
【原因3】 [ツール] - [オプション] で[計算方法] タブの [計算方法] グループの設定や、
      [移行] タブの [シート オプション] の設定などブックやシートに対する設定を変更した場合
【原因4】 図のリンク貼り付け、または、カメラ を使用している場合

[XL]変更していないブックを閉じる際保存するか尋ねられる場合(XL5.0)

HOME  検索  索引  もくじ  関数目次ージへ        次ページへ

このページのTOPへ

 

 

 

 

inserted by FC2 system