• 締切済み

Excelからコピーしたときの「保存しますか」を止めたい

質問:Excelのファイルを変更していないのに、閉じるときに「変更を保存しますか」ときいてきます。これを止めるにはどうすればよいですか? 例えば、こういうことです。 Excelのファイル(xls)にはたくさんの言葉が入っていて、 その言葉をコピーして、 何か別のところ(例えば、メモ帳とかなんでもいいです。)に貼り付けることを繰り返す作業を しているとします。 Excelのファイルはコピーするために開いているのであって、編集するつもりで開いているのではありません。 言葉をコピーするにはセルを選擇して、数式バーにある言葉をなぞって(反転して)「コピー」します。 このようなことを行うと、閉じるときに「変更を保存しますか」と訊いてきます。 このときに私が心配になるのは、 「ひょっとして、何か作業をミスって、どこかのセルの内容を書き換えてしまったのではないか?」 ということです。 「いいえ」を選べば元のファイルは書き換えられないことはいいのですが、 コピー対象の言葉を書き換えてしまったかもしれないということです。 (書き換えられた言葉を、コピー・貼り付けしてしまったかもしれない。) このような心配をするのはいやなので、書き換えていなければ「変更を保存しますか」を出さなくしたいのです。 なお、コピー後 Escキーを押したときは、このダイアログボックスが出ないことはわかりました。 しかし、癖で、Escキーを押すのではなくて、別のセルをクリックしてしまうのです。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.5

質問の意味は判ります。 (1)「変更」をしたときは、閉じるときに「変更を保存しますか」と訊いてきます(概括的表現)。 警告を全面的に抑止することは、VBAでも出来ます。 しかしそれでは質問の主旨と違うでしょう。 (2)それでは「変更」とは、どこまでが含まれるのか 疑問が出ます。(詳細的疑問) (3)データの変更や書式設定の変更、関数式の設定などは「変更」に含まれます(一般常識的経験) (4)>言葉をコピーするにはセルを選擇して、数式バーにある言葉をなぞって(反転して)「コピー」します。 この場合も、「変更」に含まれるらしい。(新たな経験) (5)(4)は質問者にとって不都合。それを防ぐにはどうすれば良いか(私的ニーズとの衝突)。 (6)我々ユーザーは、基本的にメニューからたどれる設定しか、許されていない。 しかし「裏技」的方法がないか質問が出る。 しかしエクセルの中でどう言うプログラム処理をしているかは、一般にはかり知れない。ソースコードが企業秘密で門外不出で、例え発表されても一部のエキスパートしか理解する力はないでしょう。 (7)こう言う状況で、本質問のようなのは、対策回答が 出にくいのではと思う。 時々自分の余りにピンポイント的ニーズを持ちだしての質問が出るが、私など昔プログラムで苦労してものになってない人間からすると、エクセルと言うか最近のソフトの機能の多様さ優秀さに驚嘆し、少しの気に食わない点はまあまあと許してしまうのですが。 (8)このOKWEBの回答者は、エクセルならエクセルについて、すべて知り尽くしている人が回答してくれるわけではないでしょう。(「すべて知り尽くす」ことは、発表されていないから、そもそも出来ない)そういう人は見てないでしょう。 だから納得がいく回答が出なければ、それだけ特殊な質問だということで、残念ながら諦めざるを得ないでしょう。

すると、全ての回答が全文表示されます。
  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.4

#2です。 謝る必要はないですが、他の回答部分にまったく触れてない事の方が一生懸命回答した側としてはよっぽど気になります。こちらとしては提示のマクロは希望に相当近いと思ってたもんで。 求めるような回答にはならなかったって事なんでしょうが。

すると、全ての回答が全文表示されます。
  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.3

#2です。 解かりにくい質問ですね。 わざわざ数式バーからなぞってコピーしているので、セル内に含まれる単語の一部だけをコピーしているのかと思いました。No.801476もみましたが、セルを選択してコピーと数式バーでなぞってコピーで、求める結果の違いは「貼り付けた際の改行」だけって事? 私的には数式バーから単語をなぞってコピーする方が、貼り付け時の改行を削除するより面倒に思うけど。。。 国語 英語 算数 と貼り付けた物を 国語英語算数 にしたいだけなら、秀丸だったら置換えで \n を空白で置き換えるだけですよ。 他にはExcelで選択セルの値をクリップボードに送るマクロでも作って、ショートカットキーに割当てるとか。 Sub Test() Dim s As String, MyData As DataObject On Error GoTo ER:  If TypeName(Selection) <> "Range" Then Exit Sub  s = Selection.Text  Set MyData = New DataObject  MyData.SetText s  MyData.PutInClipboard ER:  Set MyData = Nothing End Sub ※ 上記サンプルを実行するにはVBEの参照設定で Microsoft Forms 2.0 Object Library にチェックをする必要あり

noname#6089
質問者

お礼

>解かりにくい質問ですね。 すみませんでした。

すると、全ての回答が全文表示されます。
  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.2

こんな作業の場合は「読み取り専用」で開いたらどうでしょう。 読み取り専用で開いた場合、作業後に「保存しますか」を聞いてくるのは同じですが「はい」を選んでも上書き出来ません。 対象のブックを開き、名前を付けて保存で出てくるダイアログのツール-全般オプションで設定します。(Excel2000はこうですが、バージョンによって若干違います。) 「読み取り専用を推奨する」にチェックを入れるだけだと、開く時に「読み取り専用を推奨します」って感じのメッセージが出て、「はい」で読み取り専用で開きます。 もっと強固にしたいなら「書き込みパスワード」を設定すると開いた時にパスワードを求めてきます。パスワード無しで開くときは「読み取り専用」ボタンで開けます。

noname#6089
質問者

お礼

ファイルが上書きされるかどうか についてご回答なさっているようですが、 質問は「現在表示されているデータ」が変更されているかどうかについてでした。 紛らわしかったようで、すみません。

すると、全ての回答が全文表示されます。
noname#240783
noname#240783
回答No.1

「今現在のデータを書き変えたくない」ことが主眼であれば、 まず、メニュー「ツール」-「保護」-「シート保護」を実施すれば シート上のデータはロックされて編集できなくなります。 ただし、セル内の文字列を選択することもできなくなるので、 コピー手順を変えないといけなくなります。 セル自体はクリックすれば選択されますので、そのまま「コピー」します。 通常はそのまま貼り付け対象(メモ帳とか...)に「貼り付け」ればOKです。 しかし、WORDなどでは単純な「貼り付け」では余計な情報も張り付いてしまうので、 その時は「形式を選択して貼り付け」でテキストだけを貼り付けるようにしないといけません。 作業終了でExcelを閉じるとき、ファイル保存はきかれますが「いいえ」で終了します。 万一「はい」を選択し、さらに保存行為を実行してもシートがロックされて保存されるだけですので、内容は全く従前と同じままです。

noname#6089
質問者

補足

ご回答ありがとうございます。 >「今現在のデータを書き変えたくない」ことが主眼であれば、 「主眼であれば」というより、そのことしか質問していないつもりです。 紛らわしい質問で、申し譯ありません。 >メニュー「ツール」-「保護」-「シート保護」を実施すれば >シート上のデータはロックされて編集できなくなります。 >セル自体はクリックすれば選択されますので、そのまま「コピー」します。 おっしゃることはその通りだと思います。 しかし、貼り付けると、貼り付けた言葉の直後で改行されてしまいます。 コピー・貼り付けを繰り返すに当たって、いちいち改行される、というのは煩わしいのです。 この改行を防ぐ方法はないのでしょうか。 なお、この「改行を防ぐ方法があるか」という点について既に質問している(No.801476)のですが、 求めるような回答はないのです。

すると、全ての回答が全文表示されます。

関連するQ&A