• ベストアンサー

一部だけ保護したい(関数だけ保護したい)

 シートすべてではなく一部だけ保護する方法はありますか たとえば Aにコード Bに名前 同じシートに一覧が入っています その一覧は変えたくありません(変更の場合あり) 方法はありますか また B列には関数が入っているのですが、関数だけを保護する方法はありますか (データベース関数が入っています) 保護するとコードを変えるとエラーが出るんですが・・・・

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

  • ベストアンサー
  • 777nanana
  • ベストアンサー率53% (7/13)
回答No.2

kennta111さん、こんにちは!EXCELの質問をされていると思いますので その前提でお答えします。 下の方も回答されていますが、保護には二種類あり、BOOK全体の保護と、そのシートの保護があります。一部のセルに保護をかけるという発想はないので、まず保護したくないセルを下の方が書かれたように、LOCKをはずして、保護対象でなくしてから全体に保護をかけるという流れになります。こういう方法で無いと保護したいセルが多い場合が普通なので面倒だと考えたんでしょうね。 質問の例でいえば 1.Aにコード Bに名前 そのコードから検索して名前をセットさせる為の   データベーステーブル(一覧)という構成になっているんでしょうが、   Aの列だけをロックを外してから全体を保護すれば大丈夫です。   また、一覧を修正されたくなくて保護するんでしたら一覧の列を非表示にする   とか一覧を別なシートに移し、そこをロックするという方法もあります。 2.関数だけを保護する方法はありません。   前に書いたように、コードを入れるところだけ、保護を外しておけば、いくら   保護されていても正しい検索結果は表示されますよ。頑張ってください。 

kennta111
質問者

お礼

出来ました 回答 ありがとうございます

その他の回答 (2)

  • kbonb
  • ベストアンサー率51% (254/492)
回答No.3

こんにちは  以下のページがご参考になるのでは? 【エクセル技道場】-シート-シートの保護2 http://www2.odn.ne.jp/excel/waza/sheet.html#SEC10

参考URL:
http://www2.odn.ne.jp/excel/waza/sheet.html#SEC10
kennta111
質問者

お礼

回答 ありがとうございます

  • sydneyh
  • ベストアンサー率34% (664/1947)
回答No.1

「シートの保護」では、セルごとに保護するセル、保護しないセルに分けられます。 保護しないセルのみ選択し、右クリックの「セルの書式設定」→「保護」→「ロック」のチェックを外して下さい。 それから通常の「シートの保護」設定をすれば、「ロック」にチェックしてあるセルのみ保護の対象になります。

kennta111
質問者

お礼

出来ました 回答 ありがとうございます

関連するQ&A

  • EXCEL関数について質問です

    EXCELで同窓会旅行用の名簿を作っているのですが、下記のような動きをするEXCEL関数って作ることができますか? 具体的な方法を教えていただけると嬉しいのですが。。。 ・シート Sheet1に名簿一覧がある(例:A列は名前一覧、B列は部屋番号の空欄) Sheet2に部屋番号一覧がある(例:A列は部屋番号一覧、B,C,D列は名前の空欄) ・動き Sheet2のB,C,D列の名前の空欄に名前を入れていくと、 Sheet1の名簿の名前に対応した部屋番号がB列に自動で挿入される 万が一、Sheet2のB,C列(名前欄)で名前が重複してあった際には Sheet1の名簿に対応したB列に「エラー」と表示される ※Sheet1の名簿の名前(A列)は既に記入済みです。 ※Sheet2に部屋番号(A列)は既に記入済みです。 以上、お手数ですがよろしくお願いいたします。

  • Excel関数で違った答えになってしまいます

    Excel関数で違った答えになってしまいます Excelで商品の管理をしているのですが、 関数を入れても答えが違ってしまいます。 [Sheet1]・・・コード入力シート (A1)(A2)・・・商品コード (B1)(B2)・・・数量 [Sheet2]・・・データベースシート (A列)・・・商品コード とあり、データベースの価格を 数量により変化させます。 例えば 商品コード(as400)の価格を 数量100個以上なら10円、100個未満だと15円 としたいのです。 作成した関数は IF(OR(AND('Sheet1'$A$1=A1,'Sheet1'$B$1>=100),AND('Sheet1'$A$2=A1,'Sheet1'$B$2>=100)),10,15) としました。 ただこれだと、[Sheet1]の1行目は正しく表示されるのですが 2行目になると、数量を1個にしても価格が10円になってしまいます。 どのようにすれば良いか悩んでいます。 よろしくお願いします。

  • エクセル関数で困っています。VLOOK??・・

    恐れ入りますが、下記のような場合での関数は何を使えばよろしいでしょうか? シート1に A列     B列 郵便番号  地区分コード(17分類) 000-0001  1 000-0002  2 000-0003  3 という一覧表があります。 シート2には A列     B列 郵便番号  事業所の一覧(3000社) 000-0001  トウキョウショウジ 000-0003  カナガワショウシャ 000-0002  サイタマコウギョウ という具合です。 シート1の郵便番号とシート2の郵便番号が一致した場合に シート1のB列にある地区分類コードをシート2のC列に入れたいのです。 シートがわかれている必要はありません。 VlookUPらしいということまで分かりましたが、何度やってもN/Aが出てきます。 どなたかお教え下さいませ m(_ _)m

  • エクセルどの関数を使えばいいの??

    エクセルでA、BC、D,Eの各商品の注文リストを作成しています。シートAには商品Aを購入したお店と店名コードが記入されています。シートBには300店舗すべての店名コードの一覧があり、シートAで購入したお店のコードからシートBの一覧リストに ○ をつけて 購入リストを作成したいです。どのような 関数を使えばよいか教えてください。関数でできるのかどうかも 疑問です。ネストを使えばできるでしょうか

  • VLOOKUP関数(複数条件)について

    いつもお世話になっております。 エクセル2007でのデータの抽出についてお尋ねすます。 Sheet1 A列に苗字 B列に名前  Sheet2 A列に苗字 B列に名前 C列に住所の一覧があります。 この場合Sheet1のC列に苗字、名前に対応する住所をSheet2から抽出する方法を教えてください。 Vookup関数、DGET関数・・・なんかを調べてみたのですがうまく行きません。 また最終的にはデータ数を増やして((Sheet3、Sheet4・・・)から苗字、名前に対応する項目を抽出)いく予定です。 配列数式で行けるのかな?とも考えていますが、重くなりそうなので・・・ どうぞよろしくお願いします。

  • エクセルの関数を使って別のシートに文字の一部を返す

    シート1のA列に住所コード、B列に市を入力する欄、シート2のA列に住所コード、B列に県から始まる住所録のデータがある場合、例えばシート2のB列1行目にある愛知県名古屋市という文字列のうち、名古屋市という文字だけをシート1のB列1行目に返したい場合はどのような関数を使えばよいでしょうか? よろしくお願い致します。

  • エクセルで関数を使いこのようなこと可能でしょうか?

    こんにちは。皆様のお力を貸してください。 エクセルで商品一覧(シートA)を作りました。販売管理(シートB)と連動させ、納品日欄(F列)に日付が入ったら、列Bに入っている商品の仕入金額をG列に入れたいのです。商品一覧シートは、A列に商品コード、B列に商品名、C列に商品金額、D列に表示させたい仕入金額が入ってます。 関数で簡単に出来そうですが、組み方がいまいちわかりません。 ご存知の方いましたら、ご教授願います。

  • マクロでVLOOKUPを使用した複数シートのデータを一覧シートへ

    VLOOKUP関数を使用してシートを跨いでデータを一覧へもってくることができないようなので、 マクロを使用して以下のような作業をしたいです。 【Sheet1】:データベース(1)    A列  B列 1行 0001  あ 2行 0003  う 【Sheet2】:データベース(2)    A列  B列 1行 0002  い 2行 0004  え 3行 0005  お というデータから 【Sheet3】:一覧    A列  B列 1行 0001  あ 2行 0002  い 3行 0003  う 4行 0004  え 5行 0005  お を作成したい。 データベース(1)(2)は各々で全て手入力をし、 一覧のA列は予め入力しておき、B列の情報だけを一覧シートにもってくるという内容です。 (実際はセル数もシート数ももっと多いです) Application.WorksheetFunction.VLookup()を使うのかな? とは過去の質問から、なんとなく想像はつくのですが 素人なもので、例文を見てもよくわかりません・・・。 ご教授いただけると大変助かります。 よろしくお願い致します。

  • エクセルでHLOOKUP関数の選択範囲について

    エクセルでHLOOKUP関数を使って、検索したいのですが、 シートは、一覧表のシートと データが入っているA101、B203、C305、...シートは300シートくらいあります。 一覧表のシートには、下のような表になっていて、      A列  B列  C列  D列 ...          1003、1004、1005、1006、... 2行目 A101  3行目 B203 4行目 C305       .       .       . データのはいっているシート、A101は下の表になっています。      B列 C列 D列、・・・、Z列 2行目 1004、1005、1006、... 3行目 100、 200、 150、... 一覧表のB列の2行目には HLOOKUP(B2、シートA2のB2:Z3、2行目、FALSE) という感じで、シート名をセルA2のものを参照にして 探して表示させ、B列、C列、D列の2行目から下の行も 表示させたいのですが、うめくできませんでした。 INDIRECT関数を使ってみましたが、セル範囲が無効という エラーがでてしまいます。↓こんな感じで入力してみたのですが... SUMPRODUCT((INDIRECT($A2&"!$B$2:$Z$3"))=$B$1,(INDIRECT($A2&"!$B$2:$Z$3"))) 1つづつデータを見て手打ちはデータが多く、 どんどんデータが増えていくので できれば関数を使って表示させたいと思っています。 詳しい方いらっしゃいましたら、どうか教えてください よろしくお願いします。

  • エクセルの関数について

    A列に日付、B列にコードが入っているデータシートから、日付-コードが同じものの個数を算出して統計を取りたいときは、どのような関数を使えばよいのでしょうか。 例) A     B   1/5    A01   1/5    A01      (別シート) 1/5 A01 2   1/8    B01             1/8 B01 1   1/9    A01             1/9 A01 1

専門家に質問してみよう