
Excelでsheetのデータ入力だけを許可し、書式の変更はできないように
したいファイルがあります。
"保護"機能を使ってできると思っていたのですが、たしかに直接そのsheet中の
セルの書式を変更することはできないのですが、他のsheetのセルをコピーして
保護対象のsheetにそれを貼り付けることによって、書式が変更されてしまいます。
このようなケースでも、貼り付けを禁止するとか貼り付けても書式が変更されない
ようにするためにはどのようにすればよいでしょうか。
よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
こんばんは。
二つの方法があると思いますよ。
簡単な方法は、コピーしたら、貼り付ける場所で、右クリックで、値貼り付けにするわけです。もう1つは、マクロです。多少、変った特徴のあるマクロです。
'標準モジュールに設定してください。
'一旦、ファイルを閉じて、再び開けるか、SettingKey マクロを実行することで、設定されます。
Sub myPaste()
'値貼り付けのマクロ
On Error Resume Next
ActiveSheet.PasteSpecial Format:="テキスト"
If Err() > 0 Then
ActiveCell.PasteSpecial (xlPasteValues)
End If
End Sub
Sub SettingKey()
'キー設定 Ctrl + V
Application.OnKey "^v", "myPaste"
End Sub
Sub SettingOffKey()
'設定解除
Application.OnKey "^v"
End Sub
Sub Auto_Open()
'開けた時に設定
Call SettingKey
End Sub
Sub Auto_Close()
'閉じた時に解除
Call SettingOffKey
End Sub
値貼り付け=テキスト貼り付けになっていますから、ペースト側の書式をそのまま受け継ぎ、コピー側の書式情報は、全てなくなっています。ただ、この設定されたブックをあけておくと、現在の設定では、全てに同じように適用されますので、書式もコピーしたい場合、メニューから編集-貼り付けを使ってください。ショートカットのCtrl + V に、特殊な設定がされています。なお、インターネットサイトからの貼り付けも、値貼り付けになります。
No.1
- 回答日時:
XXを禁止するという場合、
(1)XXを行ったとき、システムやエクセルから知らせもらって無効にする
(2)もともとできないようにする。
があるが(1)はそういうイベント通知をしてもらえい、VBAで捉えられないとどうにもなりません。
(2)は手動操作では、メニューになければ、どうしようもありません。エクセルはまだまだ、自分が作って使うという使い方が前提で他人が触るのを禁止するという観点から作りこんでないと思うので、こういうニーズには対応できてません。
本格的な業務システムでは、フォームなどに、必要なものだけ出し、余分なことは、触れたり、変えられないようになってます。エクセルほど、そのソフトができることを全部、前(画面)にぶちまけてません。
どちらかといえば、メニューを非表示にするとかで、質問とは違うが、対応できることがあれば、検討事項でないでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルの表示形式について教えてください あるセルの「A」という値と、別のセルの「B」という値を組み 4 2023/02/21 21:55
- Visual Basic(VBA) Excel VBA 書式変更で困ってます。 オートフィルターの日付フィルターを用いて データの絞り込 2 2022/07/26 22:16
- Excel(エクセル) こんなことできますか?例えば、sheetに貼り付けた図形のタイトルを、セルA1の文字で表示する。 5 2022/04/22 15:25
- Visual Basic(VBA) 【変更】ファイルを閉じてダイアログで保存した時、更新したシートだけの処理の実行をする 5 2022/03/26 18:31
- Word(ワード) LibreOfficeで保存データをMicrosoft Office 2013に変更したい。 2 2022/06/14 23:36
- Visual Basic(VBA) vbaエクセルマクロについて あるデータを作成し、デスクトップに.xlsx形式で保存するマクロを作成 2 2023/03/02 18:54
- Excel(エクセル) 条件付き書式で文字入力 6 2022/08/29 10:40
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
- Excel(エクセル) マクロ/VBAについて教えてください。 10 2022/05/27 12:59
- 財務・会計・経理 業者間での注文書・請書の取り扱いについて 2 2022/06/27 15:53
このQ&Aを見た人はこんなQ&Aも見ています
-
EXCEL 表の書式のみ変更不可(保護)したい
Excel(エクセル)
-
エクセルファイルを値でのみしか貼り付けできないようにする
Excel(エクセル)
-
Excelの条件付き書式を崩されたくない
Excel(エクセル)
-
-
4
エクセルのセルをコピーした際にルールはコピーしない
その他(Microsoft Office)
-
5
VBAで、貼り付け禁止命令を実現したい(エクセル)
Visual Basic(VBA)
-
6
Excelシートの保護時にデータの並び替え
その他(Microsoft Office)
-
7
書式のみを変更できなくする方法
Visual Basic(VBA)
-
8
EXCEL、セルのコピー・貼り付けを禁止したい
Excel(エクセル)
-
9
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
10
Excelで数式内の文字色を一部だけ変更したい
Excel(エクセル)
-
11
Excel2013で切り取り禁止
Visual Basic(VBA)
-
12
ハイパーリンクでジャンプした先のセルを画面の一番上に表示させたいです。
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
尿検査前日に自慰行為した時の...
-
首吊りどこ締めるの
-
至急!尿検査前日にオナニーし...
-
尿検査の前日は自慰控えたほう...
-
VLOOKUP関数を使用時、検索する...
-
値が入っているときだけ計算結...
-
リンク先のファイルを開かなく...
-
検便についてです。 便は取れた...
-
2つの数値のうち、数値が小さい...
-
彼女のことが好きすぎて彼女の...
-
【Excelで「正弦波」のグラフを...
-
MIN関数で空白セルを無視したい...
-
EXCELで式からグラフを描くには?
-
一番多く表示のある値(文字列...
-
Excel 数値の前の「 ' 」を一括...
-
小数点以下を繰り上げたものを...
-
ある範囲のセルから任意の値を...
-
excelのIF関数 A,Bの大きいほ...
-
EXCELで条件付き書式で空白セル...
-
値が入っている一番右のセル位...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
首吊りどこ締めるの
-
彼女のことが好きすぎて彼女の...
-
イタリアから帰国する際、肉製...
-
2つの数値のうち、数値が小さい...
-
健否~書類の書き方~
-
VLOOKUP関数を使用時、検索する...
-
値が入っているときだけ計算結...
-
小数点以下を繰り上げたものを...
-
エクセルで空白セルを含む列の...
-
EXCELで条件付き書式で空白セル...
-
リンク先のファイルを開かなく...
-
ある範囲のセルから任意の値を...
-
精子に血が・・・
-
エクセルで数式の答えを数値と...
-
風俗店へ行く前のご飯
-
エクセル指定した範囲からラン...
-
一番多く表示のある値(文字列...
-
Excel 数値の前の「 ' 」を一括...
-
ワードのページ番号をもっと下...
-
MIN関数で空白セルを無視したい...
おすすめ情報