[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『マクロ設定のファイルにシート保護でエラー』(やま)
マクロの登録をしても、シート保護を可能にする手順をご教授ください。
ファイルの一部分を生徒に触らせないようにするためです。 よろしくお願いします。
< 使用 Excel:Excel2010、使用 OS:Windows7 >
マクロでシート保護をする際に、 UserInterfaceOnly オプションを指定してください。 http://www.asahi-net.or.jp/~ef2o-inue/vba_o/sub05_030_040.html
(Mook) 2014/07/08(火) 12:02
(Mook)さん:
◎ 早速のご教示感謝です。 「実行時エラー'1004」が出ました。 何処がミスなんでしょうか? ちなみに、シート保護なしでは、下段の設定で「正常に作動」しています。 VBAは、ご指導いただきながらの操作しかできませんが、よろしくお願いします。
Private Sub Workbook_Open() '一旦、シート保護を解除 ActiveSheet.Unprotect 'シート保護を設定(UIのみ) ActiveSheetProtect UserinterfaceOnliy:=True
ActiveWindows.ScrollRow = 1
End Sub
Sub ボタン1_Click() Dim r As Variant If Range("F2").Value <> "" And Range("H2").Value <> "" Then r = Application.Match(Range("F2").Value, Range("B53:B84"), 0) If IsError(r) Then Exit Sub Range("B53:B84").Cells(r).End(xlToRight).Offset(, 1).Value = Range("H2").Value End If End Sub (やま) 2014/07/08(火) 12:53
とりあえず、コードは正確に書いてください。
○ ActiveSheet.Protect UserinterfaceOnly:=True × ActiveSheetProtect UserinterfaceOnliy:=True ^ ^ (Mook) 2014/07/08(火) 15:58
(Mook)さん:
失礼をいたしました。書き直しましたが、「エラー」でした。 但し、Excelの古いバージョンのPCにも使用する事になってしまいましたので。色々アドバイスを頂きまし たが、この質問は、ここで、一度切らせてください。ありがとうございました。 (やま) 2014/07/08(火) 20:15
質問を継続されないのも自由ですが、どこがエラーだったかは説明するようにした方が 解決が早いかと思います。
ちょっと気になったのは Workbook_Open をThisworkbook の下にあるかといったところです。
(Mook) 2014/07/08(火) 22:07
誤)ActiveWindows.ScrollRow = 1 正)ActiveWindow.ScrollRow = 1
(マナ) 2014/07/08(火) 22:35
(Mook)さん:(マナ) さん:
◎ ご親切に有り難うございます。実は、昨日今日と古いPCでの作業をしていました。 念のためにと、ここを覗いてよかったです。 「条件付き書式」と「答えを消す」のマクロボタンを作成して、「シート保護」をかけたものが、完成?した ところです。 ぶしつけながら、下記に内容を記します。なぜ{OK」なのかも理解していませんが「希望 の作業」はでき たという感じです。 ぶしつけながら、質問とかけ離れた行為かもしれませんが、下に記し ます。ご容赦を。
Sub ボタン2_Click() Dim r As Variant Range("C14:G14,C28:G28,C42:G42").ClearContents
End Sub
◎ マクロに関しては、理解できていませんが、何とかなっているという感じです。 ◎ 条件付き書式で、◎や判定級などのセルは、「白色文字」にしておいて、「パスワードの入力」で「赤 色文字」」で表示させることでクリアしました。
◎ 本日のご指導に関しましては、明日以降にExcel2010 Windows7で「チャレンジ」してみます。また とんでもない質問をすることになるかと思いますが、○○高齢者なので、よろしくお願いします。 (やま) 2014/07/09(水) 21:18
(Mook)さん:(マナ) さん:
◎ 何度もご教示を頂き、ありがとうございます。
◎ 利用環境(方法) 小学生対象。「指定セル」しか、「入力可」としない。制限時 間を設定するので入 力セルの移動を、スムースにしたい。終了したら次の生徒と交 代 する際に、最初の「画面」に戻しておきたい。そこで、生徒番号の入力で「◎×の判 定や得点・判定級の表示」をさせる。「得点記録」ボタンをク リックで、成績一覧表 に記録させる。「答えを消す」ボタンのクリックで、入力したセルの文字を消す。初 期画面(スタンバイ)シートをクリックで、次と「交代する。
◎ 結局は、2003ファイルでの作業となりましたが、下記のようにできましたので、 御礼と報告をします。
Private Sub Workbook_Open()
'一旦、シート保護を解除 ActiveSheet.Unprotect 'シート保護を設定(Ulのみ) ActiveSheet.Protect UserInterfaceOnly:=True
ActiveWindow.ScrollRow = 1
End Sub
Sub ボタン3_Click() Dim r As Variant If Range("F2").Value <> "" And Range("H2").Value <> "" Then r = Application.Match(Range("F2").Value, Range("B53:B84"), 0) If IsError(r) Then Exit Sub Range("B53:B84").Cells(r).End(xlToRight).Offset(, 1).Value = Range("H2").Value End If End Sub
Sub ボタン2_Click()
Dim r As Variant
Range("C14:G14,C28:G28,C42:G42").ClearContents
End Sub
何度も、ありがとうございました。
(やま) 2014/07/13(日) 12:05
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.