dポイントプレゼントキャンペーン実施中!

こんにちは。
タイトルの通りなのですが、EXCELでセルの内容の変更はOKで
シート名のみ変更できなくしたいのです。
もしくは変更されたら「シート名は変更できません」等のメッセージを出して、元のシート名に戻すと言うのでも結構です。
どのように、またどこに(それぞれのシートのオブジェクトのところ???)書けばいいのか教えて下さい。

A 回答 (5件)

#2です。

VBAでしたね。

#2の操作を「マクロの記録」で記録するとコードが出来ます。

これを参考にするといいでしょう。

この回答への補足

M-SOFTさん、どうもありがとうございました。
うまい具合にできました。
欲を言えば、シート名等を変更しようとした時に出てくる「ブックは保護されています。変更できません。」というメッセージをオリジナルにすることができたら・・・無理ですよ・・・ね。

補足日時:2005/11/21 16:21
    • good
    • 0

エクセルの色々な手作業の操作を行われたときに、VBAのプログラムとして知らせてくれる(捕らえられる)のは、イベントとして、エクセルVBAでは非常に限られたものです。

変えた事を捉えられなければ、禁止しようがないわけですから、表裏一体です。操作を禁止したいために、たとえば行高を変えたときにとか色々要求はありえますが、きりがありません。APIを勉強すれば少し幅が広がると思いますが、アプリの1つの動作ごとに備えを造るのは難しいでしょう。
    • good
    • 1
この回答へのお礼

imogasiさん、どうもありがとうございます。
やはりそうなんですねー。
このケースに限らず「~をした時」と言う指定に頭を悩ませることがよくあるのですが、やはり制約があるんですね。
API・・・?!こらまたすごい代物???
でもVBAをやり始めたばかりの私にとっては、VBAを使いこなすこと自体まだまだなので
遠い将来、チャレンジすることがあれば頑張ってみたいと思います。
ありがとうございました。

お礼日時:2005/11/22 09:27

>「ブックは保護されています。

変更できません。」というメッセージをオリジナルにすることができたら・・・無理ですよ・・・ね。

バルーンの機能を使うか、MsgBox関数で出来ます。

EXCEL の標準メッセージも出る様なら、止めてからでないと2回でるかな?
止め方は、忘れちゃいました(^^; ヘルプでお探し下さい m(_ _)m
    • good
    • 0
この回答へのお礼

どうもありがとうございます。
止め方を探してみましたが、見つけることができませんでした。
もし止め方がわかってもメッセージを出すタイミング(どうなった時にメッセージを出すか)の指定が難しそうですね。
今のメッセージのままで行くか、他の方法を取るか検討してみます。

お礼日時:2005/11/22 09:21

こんにちは。



ブックの保護でシート構成にチェックを入れて保護すれば変更できなくなります。

どうでしょうか。
    • good
    • 0

こんにちは。


私はVBAぜんぜん詳しくないのですが、
http://www.vbalab.net/ VBA質問箱

こちらの住民の方々にはかなり詳しく教えて頂いたことがございます。

もしかしたら、そっちの方が早く解決するかもしれませんね。

参考URL:http://www.vbalab.net/
    • good
    • 0
この回答へのお礼

dcontactさん、こんにちは。
私もVBA質問箱、利用させてもらったことがあります。
こちらの方もチャレンジしてみます。ありがとうございました。

お礼日時:2005/11/21 16:19

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

このQ&Aを見た人はこんなQ&Aも見ています