【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?

よろしくお願いします。
エクセルのファイル(ブック)を自動的にバックアップとりたいのですが、よろしくご指導お願いします。

◆「sheet1のセルA1に
 =”ファイル名”&=TEXT(NOW(),"yymmddhhmm")」
と入れています。これによりブックを閉じるときにバックアップ用フォルダにセル「A1」に表示される文字をファイル名として自動保存をしたいのです。

◆ひとつ難題があります。バックアップ先はネットワークでつながっている、ある管理者のパソコンです。管理者出張等で、そのパソコンが立ち上がっていないときもありえます。そのようなときはそのバックアップそのものが不能ですから、VBAでもそういう場合はバックアップそのものをあきらめるといいますか、自動パスして終了したいのです。

以上のことについてご指導お願いいたします。初心者ですので、わかりやすくお願い申し上げます。

A 回答 (1件)

Sub BKsave()



Dim BkName As String
Dim NetPath As String

'保存先パス名
NetPath = "\\PC_NAME\Fol1\"
'A1 には、ファイル名のみ記入でOK
' Format文で書式設定
BkName = ThisWorkbook.Sheets("sheet1").Range("A1").Text & _
Format(Now(), "yyyymmddhhmm") & ".xls"

'NetPath = ThisWorkbook.path & "\" '←同じフォルダに保存する場合。

'エラーがあった場合、実行を止めないで任意の場所に飛ぶ GoTo Error1
On Error GoTo Error1
'DIR関数でパスの有無を確認。(存在しない場合はエラーになる)
If Dir(NetPath, vbDirectory) <> "" Then
'別名で保存
ThisWorkbook.SaveCopyAs NetPath & BkName
End If

MsgBox "保存しました。"

Exit Sub '終了
Error1: 'エラー時
MsgBox "保存先がありません"
End Sub

この回答への補足

ご回答ありがとうございます。すこしお時間をいただいて研究してみます。ありがとうございました。また、お礼欄であらためてお礼申し上げます。

補足日時:2006/03/21 19:48
    • good
    • 0
この回答へのお礼

あらためてご回答ありがとうございました。
とてもわかりやすく書いてくださってありがとうございます。

でも、理解力が弱く、いまだ、ご指導内容をいまだ勉強中です。
お礼欄を使って補足依頼のようになり申し訳ありません。

◆入力知識しかない程度のファイルを使用する担当者のためにファイルを作りましたが、その方のために自動バックアップをとりたい目的です。エクセルを終了する(担当者が「×」を押す)ことで上書き保存だけでなく、自動バックアップを取れるには?という方法についてよく理解できません。補足といいますか、もう一度、ご指導お願いできないでしょうか?よろしくお願いいたします。私は4月で異動でこの職場を去りますが、万一ファイルが壊れたときにこの毎日のバックアップファイルさえあればなんとかなると考えています。

お礼日時:2006/03/22 10:04

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報