• 締切済み

エクセルで過去の行だけ保護できる?

WWolfの回答

  • WWolf
  • ベストアンサー率26% (51/192)
回答No.2

こんにちは。 機能はありませんが、作ることは出来ます。 家計簿で毎日上から順に入力と言う事は行単位で日にちが変わっていくような感じだと想定します。 質問内容というか条件がハッキリしないので取り敢えず簡単に作成しました。 下記をVBEにてThisBookに貼り付けてください。 Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) Dim WSh As Worksheet For Each WSh In Worksheets WSh.Unprotect WSh.Cells.Locked = False lr = WSh.Range("A65536").End(xlUp).Row WSh.Rows("1:" & lr).Locked = True WSh.Protect Next End Sub これは、単純に各シートのA列の最終列をその日とし、保存時にセルに対しロック設定をします。 この場合、同日に変更は出来ません。というか保護を外せば出来ます。 色々と決め事が無いと使いにくくなると思いますが、参考まで・・・

line1964
質問者

お礼

回答ありがとうございます。 ですがビジュアルベーシックは苦手なもんで。

関連するQ&A

  • エクセルでの行ごとの保護

    エクセルで1行ごとに情報を入れていきます。 どんどん行が増え情報が溜まっていきますが、消されては困るので行を保護したいと考えます。 そこで各行の先頭に保護(数字でも構いません)と入力するとその行だけ保護されるということはできませんでしょうか。 マクロもよく分からない初心者です。よろしくお願い致します。

  • エクセルシートの保護について教えてください

    エクセルシートの保護は出来たのですが 時系列順に入力したもを自動的にセルの保護する機能は あるのでしょうか。 セルの上書き防止の為に機能を探しております。 どうぞ宜しくお願いします。

  • エクセル、行のランダムについて

    エクセル、行のランダムについて エクセルで行のランダムについて教えてください。 仮にエクセルシートに以下のようなデータがあるとします。  |  A  |  B  |  C  |  D  |  E  | 1|    |今日は |昨日は |明日は |    |  2|    |良い  |悪い  |普通の |最悪な |  3|    |1日  |日   |    |    |  4|    |でした。|だった。|    |    |  このようなデータがあるとして、各行、ランダムに1つ選び、A列に入れて文章を作成したいのですが、どのようにすればいいでしょうか?

  • エクセルの保護についてお伺いいたします。

    エクセルの保護についてお伺いいたします。 シートA1からA5は入力用として使うため、ロックを外してシートを保護しました。しかしA1のセルをクリックしてドラッグすると下の方に移動ができてしまいます。ここに入力したデータはC1からC5の横方向へ順番にリンクさせて、VBAでarray関数の配列として使いたいと思っています。間違えてA1セルを移動させてしまうとデータの配列順も変わるため困っています。セルの移動ができないようにする保護の方法はないでしょうか。エクセルまたはVBAどちらでも構いませんのであればよろしくご教授お願いいたします。

  • エクセルの保護について

    エクセルの保護に付いて教えて下さい。 あるSheetを入力テンプレートとして使用しています。(多数の人が使用します。) sheet中の特定のセルのみに入力してもらい、それ以外のセルはいじられたくないのでシートの保護をかけました。 ただ、要件上、行がものすごく多いのである単位でグループ化をしています。 この設定を行ったところ、シートの保護をするとグループ化の+、-ボタンも保護対象となってしまい行を展開したり圧縮したりする事が出来なくなってしまいました。 この問題を解決する事は出来ますでしょうか?? 出来ればエクセルの標準機能で対応したいのですが、、、 もし、マクロでしか出来ないのであればそれでも結構です。 よろしくお願いします。

  • エクセルで上書き保護について教えてください。

    エクセルで番号の管理台帳を作成しています。 複数の人が入力する関係上、一度入力し保存したデータについては保護したいのです。現在「入力規制」の設定にて1行毎にパスワード(行番号)を設け、なんとなく保護しているといった感じです。「入力規制」の設定も面倒で1行毎に設定しなければならず、数百行も設定していたら腱鞘炎になってしまいます。なにか良い方法御存知の方教えてください。

  • エクセルでユーザーフォームを利用したいのですが・・・

    エクセルでユーザーフォームを利用したいのですが・・・ ユーザフォームは作れるのですが、なにせ、コマンドボタンを押したときのマクロを教えていただきたいです。 たとえば、A欄に日付B欄に会社名C欄に数字を入力するとしまして、 とうぜん、ユーザーフォームには日付、会社名、数字の入力ボックスとコマンドボタン(入力ボタン)があるわけです。 入力ボタンを押せば順に入力していただきたいのですが、条件があるのです。 その1、1行目2行目は使いますので3行目から入力してもらいたい。 その2、入力順、日付順に並べてほしい。 その2をもう少し詳しく書かせていただきますと、今日に10行分のデータを入力したとしまして あしたの分も2行ほど早めに入力したとします。 明日の分は当然、明日の日付でするわけです。 さて、今日の分を追加したいとき、明日の日付の前にこないと駄目という条件でございます。 よろしゅうおねがいします。

  • Excelで2行単位のソートの出来る方法があれば教えてください。

    Excelはとっても便利ですが、データの並び替え・フィルタ処理をするには、1行単位で行うようです。 項目が多い場合、1行単位でデータを記入すると横(若しくは縦)に相当広がり入力が大変不便です。 そこで2行単位で項目を設定して入力しますと約半分の長さになり、入力もしやすくなります。 そこでご質問ですが、このような2行単位でのデータの並び替え、又はフィルタを使う場合、1行単位でソートされてしまいデータがめちゃめちゃになってしまいます。 どなたか、もしExcelでデータの並び替え、又はフィルタを行う場合、2行単位で出来る方法をご存知でしたら教えて頂けないでしょうか。 当方、ちなみにExcelにおきましては、簡単なマクロ処理などを行う知識ぐらいです。 Excel VBA につきましては、ボタン等の設定程度です。 以上、よろしくお願いします。

  • エクセルで繰り返しデータ入力

    エクセル初心者です。 Sheet1のH列2から20行に毎日複数のデータ入力があり、その入力データはSheet2に日付順で1日から31日までの行を割り当て、転記される設定は可能でしょうか。翌日は又Sheet1のH列2から20行に毎日複数のデータ入力しこの繰り返しです。

  • Excel行スクロール

    Excelの行スクロールで教えてください。 100行分のデータがあるときは100行分で行スクロールバーが出ます。 1万行分のデータがあるときは1万行分で行スクロールバーが出ます。 ところが、一度1万行のデータがあった後、9900行を削除しても行スクロールバーは1万行分のままです。データが100行分になったので100行分の行スクロールバーにしたいのですが、やり方がわかりません。 Excel2000です。Excelの一般機能としての操作方法とExcelVBAでの方法をお願いします。