• ベストアンサー

B列の空白セルのみデータを入力できる

タイトル通りですが、エクセルデータの共有をするのに、間違ってデータを改変されたくありません。 B列の空白セルのみデータを入力できるようにしたいのですが、そんなことはできますか? よろしくご教授くださいませ。

noname#241383
noname#241383

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.3

マクロを併用するような方法になります。 手順: B列を選び(若しくは必要に応じてB列の今の時点で空白のセルを選んで),右クリックしてセルの書式設定の保護のタブでロックのチェックを外しておく (必要に応じて「保護しなくて良い」他の列のセルも保護のチェックを外しておく) 暫定的にシートを保護しておく シート名タブを右クリックしてコードの表示を選ぶ 現れたシートに下記をコピー貼り付ける private sub worksheet_change(byval Target as excel.range) activesheet.protect userinterfaceonly:=true on error resume next application.intersect(target, range("B:B")).locked = true end sub ファイルメニューから終了してエクセルに戻り,B列に書き込むと書き込んだところは保護されて,以後修正できなくなる。 #補足 基本はシートの保護の機能を使います。 言わずもがなですが通常の手順で行っただけでは,追加で書き足したデータを再修正出来てしまいます。 エクセルにとっては「空白セルに書き込む」も「既にあるデータを編集する」も,同じ「セルを編集する」でしかないので,一般機能では書き込み済みセルだけとか空白セルだけを特別扱いできる機能はありません。 #補足 シートの保護の機能を使うため,場合によってはシートで「こういう使い方をしたい」を阻害する場合もあります。ご利用のエクセルのバージョンと具体的な「こういう使い方をしていたけど出来なくなった」によっては,シートの保護の設定で回避できる場合もあります。必要に応じてシートの保護の設定についてネットで調べたりしてみてください。必要に応じて上記マクロにも設定を追記して利用します。 「新しいマクロの記録」の機能で,「必要な設定を取り付けてシートを保護する」という操作を記録マクロに録り,上述のマクロを手直しして使ってください。

その他の回答 (2)

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.2

B列を選択し、Ctrl+Gでジャンプダイアログを出して「セル選択」から「空白セル」にチェックを入れ空白セルのみ選択し、Ctrl+1のショートカット操作でセルの書式設定ダイアログを出し保護タブで「ロック」のチェックを外します。 最後に、校閲タブで(Excel2003以前のバージョンなら「ツール」「保護」)「シートの保護」をすれば、B列の空白セル以外に入力できなくなります。 #Officeソフトはバージョンによって使用できる機能や操作方法が大きく異なりますので(前半部分の操作はどのバージョンでも利用できる方法を提示しました)、ご質問の際にはバージョンを明記するようにしましょう。

  • x_o
  • ベストアンサー率81% (159/195)
回答No.1

どのバージョンを使ってるかわかりませんが、ツールオプション→保護→シートの保護ではダメですか?パスワードも付けれますし、セルの範囲でロックがかけられます。 ちょっと今は古いバージョンきり手元に無いので最近のバージョンでは保護がどの場所にあるか定かではないのですが、どこかに保護の項目が有ると思います。

関連するQ&A

  • 入力されるまで合計セルを空白にしたいのですが

    A5:A120にデータ入力し、A121に「Sum」で合計を だしています。B列からM列も同様になっています。 列のデータは1~0の数字だけです。 当該列のセルが未入力だと当然合計欄は「0」に表示 されています。 この場合、「0」が目障りなので、いずれかのセルにデータ が入力されない限り、空白表示にしておきたいのです。 どんな関数をどう使えば良いのでしょうか?

  • エクセルの空白セルの選択

    こんにちは いつもお世話になっています。  エクセルの空白セルの選択について教えてください。 A列、B列にデータがあります。それぞれの列で空白セルがありますが、同じ行で両列ともに空白のセルだけを選択する方法を教えてください。  単に「ジャンプ」から空白セルを選択すると片方にデータがある行のセルも選択してしまいます。片方にデータのある行は残し、両列ともに空白の行を削除したのです。  よろしくお願いします。

  • 空白セルへの連番入力

    添付図にて、B列には、空白を含め連番(101~)が並んでいます。 そして、B列の空白セルに、C列のような新たな連番(201~)を入れようとしています。 出来上がりはD列のようになります。 ここで、元のデータを消してはなりません。 また、新たな連番の初期値(201)は手入力するとします。 以前にもここで質問しましたが、そのときは私の日本語が悪く、希望の答えをもらうことが出来ませんでした。頭を冷やして再度質問させてもらいます。

  • Excel 空白セルのコピペについて

    http://imgur.com/5e8TsP1 上記図のように、シート1のB列に各文字を入力しています。 そして、A列にはもしB列に文字が入力されていたらID代わりの数値を表示する、という式を入力してあります。 次に、シート1のA列、B列をコピーして、シート2に数値としてペーストをします。 すると、A列は空白のはずが、xldown操作をすると元のセルで式が入力されていたものまで選んでしまい、真の空白セルとして認識してくれません。 そこで、このような例の場合、どうコピーペースト、または選択をすれば偽物の空白 セルを生み出さないように出来るでしょうか? 実際に使用するデータは項目名が多く存在し、マクロですべてのセルを選択→新規ブックを作成してそこにペースト、という処理を行っています。 この時に偽物の空白セルが出ると、データベースに読みこむ際に不都合が生じますので、何とか改善を図りたいです。 VBA、関数、Excel上のテクニックのいずれでも構いませんので、どうかご教授下さい。 よろしくお願いいたします。

  • EXCELでA1に入力しB1に1を表示したい

    職場のデータを作り直しています。 焦っているのかうまく検索出来ませんでした…。 申し訳ありませんが教えてください。 A列には日付が入力されているセルと空白のセルがあります。 そこで、A列に日付が入力されているとB列に1を表示し、A列が空白ならB列に0を表示するようにしたいです。 EXCELはver2003です。 よろしくお願いします。

  • E列のセルに数値が入れば(空白でなければ)B列の同じ行のセルに色がつく

    E列のセルに数値が入れば(空白でなければ)B列の同じ行のセルに色がつくようにしたい。 エクセル2007です。 条件付き書式で、数値を入れたセル自体に色をつけることはできたのですが他の列を参照することができませんでした。 どうやって設定すればいいでしょうか。

  • マクロ 空白セルへの文字入力

    A列が空白となるまでB列のとこどころに数字が入力されていて空白のセルへ0を入力する。 というマクロがどうしてもできないのですが、ご教示お願いします。

  • 空白セルを無視して対数近似

    A列、B列 0 957 27.31 599 56.87 402 79.08 255 158.37 92 265.17 空白セル 541.76 空白セル 807.54 空白セル 1403.11 空白セル といった2列目データ行数が不定のエクセルデータに対し、 この場合は SLOPE(LN(B1:B5),A1:A5) というように、 B列で値をもっているセルだけを使って対数近似をした片対数グラフの傾きを求めたいです。 LNは空白セルを無視してくれないので、SLOPE(LN(B1:B9),A1:A9)とかやるとエラーが出てしまいます。 何かよい方法はないでしょうか。

  • 空白セルを飛ばしてデータをまとめるには

    A列に 1 きゅうり 2 3 なす 4 5 6 7 かぼちゃ 8 9 10 11 トマト 12  :  : と入力されています。 これを、B列に空白を飛ばして 1 きゅうり 2 なす 3 かぼちゃ 4 トマト  :  : と持って来たいのですが、うまい方法はないでしょうか。 ただ、この空白セルは本当の空白ではなく、A列は =if(参照先が300円以下のもの,その野菜のなまえ,"") というような""が入っている状態です。

  • 空白セルを飛ばして転記したい

    こんばんは。 またもやexcelで悩んでおります。どうぞご教授ください。 下のようなデータがあります。     A   B   C   D    E   F   G 1 山岡     山田  丸山  山岡  山田  丸山 2      平尾     南田  平尾  南田          3 ・ ・ A列からD列まで名前のデータがあり、空白のセルもあります。 E列からG列には、各行のA列からD列の名前を、空白セルを飛ばして表記したいのです。(詰めて表記したいです) 名前は各行とも0から3つまでです。 前回同様(QNo.4073079)行き詰ってしまいました。 よろしくお願いいたします。

専門家に質問してみよう