人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

VBAで、「名前を付けて保存」を防ぐ方法はありませんか?
シートごとに(or 値のみテキストで)コピーすれば、どうにでも回避できるのはわかっていますが、簡単に防げれば、無いよりはマシと考えての質問です。
上書き保存は、以下で実現できました。
http://www.vbalab.net/vbaqa/data/excel/log/tree_576.htm

バージョンは、2000です。

●質問者: P-mako
●カテゴリ:コンピュータ インターネット
✍キーワード:VBA コピー テキスト バージョン 上書き保存
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● freemann
●35ポイント

質問内容から察するに、上書き保存も名前をつけての保存も、保存はとにかくダメということにしたいと理解しました。

なので、

質問のところにあった上書き保存を阻止するソースで、

If ThisWorkbook.Path <> "" Then

Cancel = True '保存キャンセル

ThisWorkbook.Saved = True '保存したふり

End If

Cancel = True '保存キャンセル

ThisWorkbook.Saved = True '保存したふり

と、IF文をなくせばよいのでは?

//質問の中のURL

http://www.vbalab.net/vbaqa/data/excel/log/tree_576.htm

◎質問者からの返答

あぅ。確かに。

あまりにVBAに疎いもので・・・というのは言い訳にならないですかね。


2 ● robbie21
●35ポイント

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)

Cancel = True

End Sub


ただし、

シートごとに(or 値のみテキストで)コピーすれば、どうにでも回避できるのはわかっていますが、

とのことなので、お気づきかとは思いますが

マクロを無効にして開くとか、そもそも開かずにコピーして名前を変更とか、回避方法はいくらもあります。念のため。

URLはダミーです。

http://www.moug.net/

◎質問者からの返答

Webクエリを使ってデータ更新しているので、マクロの無効状態ならファイルコピーされても問題ないです。

ファイル名もマクロ内で確認しているので、これも同様です。

それでも回避方法はたくさんあるんですがね・・・

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ