• 締切済み

エクセルで消えないセルを作りたい。

よろしくお願いします。 エクセルで、例えばB2のセルに「aa」、B3のセルに「bb」と入力したとします。 そして、A1からC3まで範囲選択をしてDeletをおしてもB2のセルの「aa」だけは消えないようにすることは可能でしょうか? エクセルは2000です。

みんなの回答

  • shinkami
  • ベストアンサー率43% (179/411)
回答No.3

ツールメニューから[保護]→[シートの保護]としてみてください。 これですべてのセルが入力、delete不可になります もう一度ツールメニュから[保護]に入って見てください 今度は[シート保護の解除]になっていると思います シート保護をかけたときに特定のセルだけをはずすには、セルの書式のロックをはずします。 シート保護解除の状態で入力したいセルだけを範囲指定して書式メニューから[セル]と入って[保護]タグ内ののロックのチェックを外します。 シート保護所モードで運用し、セルaaを変更したいときのみシート保護解除にします。

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.2

ご質問の趣旨が「B2セルを保護して変更できないようにしたい」とおいうことであれば「B2セル右クリック」→「セルの書式設定」→「保護タブ」→「ロックにチェック」→「ツール」→「シートの保護」で可能です。 この方法だとB2セルを書き換えようとするとエラーメッセージが表示されることになります。それがイヤでこの質問をされたのであれば、実用的とは言えませんが、以下のようなマクロで「B2が削除されたときは、削除前の値を復活させる」ようなことは可能です。(以下のマクロではM1セルにB2セルの内容を退避して、B2が削除されたら書き戻しています。質問のB2は例でしょうから、実際にはこのままでは使えないと思いますがご参考まで) Private Sub Worksheet_Change(ByVal Target As Range) On Error GoTo end0  If Not Intersect(Target, Range("B2")) Is Nothing Then   Application.EnableEvents = False   With ActiveSheet.Range("b2")    If .Value = "" Then     .Formula = Sheets("Sheet3").Range("M1")    Else     Sheets("Sheet3").Range("M1") = .Formula    End If   End With  End If end0:  Application.EnableEvents = True End Sub マクロは「シート名右クリック」→「コードの表示」で表示される画面に貼り付けます。またSheet3の部分は存在する任意のシート名にしてください

ppaannss
質問者

お礼

ご回答有難うございます。 このような方法があるのですね。 わざわざ書いていただき、感謝いたします。 勉強させていただきました。 ただ、たしかにあまり実用的ではないですね。 参考にさせていただきます。有難うございました。

回答No.1

オートシェイプのテキストボックスで「aa」を入力して、 B2セルに被せて置けば、 A1からC3まで範囲選択をしてDeletをおしても B2のセルに有るように見える「aa」だけは消えません。 こんな方法しか思い付きません。

ppaannss
質問者

お礼

ご回答有難うございます。 私もその方法は思いついたのですが、面倒でして。 何かいい方法はと思い、質問させていただきました。 有難うございました。

関連するQ&A

  • エクセルのセル分けについて教えてください。

    エクセルで、1つのセルに  aa,"bb","cc,"dd","ee" というように入力されています。 それをaa bb cc のようにそれぞれのセルに分けたいのですが、方法が分かりません。 ご存知の方がいらっしゃいましたら、教えてください。宜しくお願いします。

  • エクセルの名前の定義について。

    ご覧いただきありがとうございます。 エクセルの名前の定義についての質問です。 (1)【sheet1】 A2:A6に『aa』、 B2:B10に『bb』、 C2:C6に『cc』という名前を付けたとします。 ちなみにそれぞれのセルには文字列が入力されています。 (名前の定義の《範囲》はブックではなく、sheet1) (2)【sheet2】 B2:D6に『aa』、 B7:D15に『bb』、 B16:D20に『cc』と、sheet1と同じ名前を付けました。 それぞれB列・C列・D列には数字が入力されています。 (名前の定義の《範囲》はブックではなく、sheet2) ちなみにA列には、sheet1に入力されている文字列と同じものが入力されています。 A2:A6にはsheet1で『aa』と名前をつけた範囲と同じ文字列。 A7:A15にはsheet1の『bb』と同じ文字列。 A16:A20には『cc』と同じ文字列です。 ここからが本題です! (3)【sheet3】 A2に何らかしら関数を入れて、【sheet1】で作った名前(aaやbbやcc)が1つ表示されるようにしたとします。 そしてB2には、A2で表示された名前の中の文字列が1つ表示されるようにします。 (例えばA2に『aa』と表示されたら、B2には◯◯) 更にC2には、B2に表示された◯◯という文字列を使って、【sheet2】の名前『aa』の中のB列と、A列にある◯◯とが交差するセルに入力されている数字(図でいう(5))を表示させる関数を入力したいのです。(INDEXやINDIRECT、MATCH関数など…) 他に例えば、A2に『bb』(sheet1の名前)、B2に★★と表示されたら、C2には【sheet2】の名前『bb』の中のB列と、A列にある★★が交差するセルに入力されている数字を表示させたいです。 同じように、今度は、D2には、B2に表示された◯◯という文字列を使って、【sheet2】の名前『aa』のC列と、A列にある◯◯の交差するセルに入力されている数字を表示させたいです。 長々とややこしくてすみません… 説明分かりますでしょうか?? つまりは【sheet3】のC2・D2・E2に入力する関数が知りたいです。 自分なりに関数を入力してみたのですが、A2で表示された名前がsheet1での名前なので、sheet2の情報を引き出す事が出来ません。 わざわざsheet1とsheet2でシートを分けたのは、同じシート内で同じ名前が付けられないと思ったからです! どなたか分かりましたら教えて下さい! どうぞよろしくお願い致します。 ※ちなみに、貼付した図の『・』は以下省略の意味で使ってます。

  • エクセルでセルに入力されている特定の文字を数える関数はありませんか

    エクセルでセルに入力されている特定の文字を数える関数を探しています。 例えばセルに AAABCC ABC AA と入力されていたら別のセルの表に A B C 3 1 2 1 1 1 2 0 0 と表示させたいのですが。 何か方法はありますでしょうか。

  • Excel マクロ VBA セル内で改行された文字列の分割

    はじめまして。 ExcelのVBA初心者で、ちょっと困っています。 (例) (1) セルA1に以下のような改行された文字列が入力されています。 【セルA1】 a aa aaa b bb bbb (2) セルA1内の文字列を3行毎に分割し、セルA2以降に表示させたい。 【セルA2】 a aa aaa 【セルA3】 b bb bbb ※ 今回の例ではセルA1に6行しかありませんが、実際に行数は決まっていません。 そこで以下のようなVBAを見よう見まねで作り、1行毎の分割はうまくいったのですが、『3行毎に分割』ができません。 Sub 分割() Dim A, B, C A = Split(Range("A1"), Chr(10)) B = 0 For Each C In A B = B + 1 Range("A2").Offset(B - 1, 0).Value = C Next End Sub ご教授いただけると助かります。 よろしくお願い致します。

  • エクセルVBA セルの値を使ってのセル選択

    セルに入力した値でセル選択の範囲を指定したいです セルの値がxの時 セルB1~Cx と セルD100~Ex+100 を同時に選択したいのですが どうすれば良いのでしょう? セルA1に50と入力されているとします Range("B1:C50,D100:E150").Select となってほしい訳です Range や Cells とか調べたのですが分かりませんでした

  • Excel(セルの結合マクロ)

    いつもお世話になっております。 Excelのマクロで、選択範囲の中で、下のセルが空白のものは、上のセルと結合されるマクロを作りたいと考えています。 (例1:A1セルに”TEST”が入力されており、A2,A3セルが空白として、A1:A3を選択し、マクロを実行するとA1からA3がセル結合される  例2:A1に”TEST2”B2に"TEST3"が入力されており、A1:B3を選択すると、A1からA3が結合され、B2とB3も結合される) 説明が下手で申し訳ないのですが、お力を貸していただけませんでしょうか? よろしくお願いいたします。

  • Excel2000で、入力セルだけ列の範囲選択の仕方

    こんにちは!Excelの範囲選択で困っているので助けてください。実際にはマクロで範囲を選択したいと考えております。    A   B   C 1  ああ  いい  うう 2  かか  きき  くく 3  ささ  せせ  そそ 4  ちち  てて  たた … という表がある時に、B1のセルからB列の入力されているセルの一番下のセルまでを選択したい場合は どの様に範囲選択をかけると良いのでしょうか? たとえば、B1を選択してから、Ctrl+Shift+Endを押すと、B1からC4までとか最後のセルまで選択できるんですが、同じ列の最終入力セルまでを選択したいのです。B1からB4までって感じで。 よろしくお願いします。

  • EXCELのセルにある計算式だけを消したい。

     例えば、C1セルに =A1+B1 の計算式があるとします。 この時、A1セルとB1セルの数字を消しても、C1セルにはそのまま数字を残すにはどうすればいいのですか? C1セルの計算式を扱うとおかしくなるし、A1・B1の数字を消したらC1まで消えてしまいます。 手入力になるとデータが多すぎて・・・ EXCELは2000・2002です。 

  • Excelの関数?で困っています。

    Excelの関数?で困っています。 こんにちは。Excel2007を使用しています。 セルの中にある特定の文字が含まれている場合は、ある文字の後ろの数値を抽出するということはできますか? 例えば、セルA1に『AA-11 $100.00』、A2に『BB $ 95.00』と入力されている場合、『AAという文字が含まれている場合はB1に$マークの後ろの数値を抽出、BBという文字が含まれている場合はC1に$マークの後ろの数値を抽出する』というものを関数などを使用して作ることはできるのでしょうか? もしできるのであれば、ぜひご教示ください。 宜しくお願いします。

  • Excel 入力セル移動方法

    Excel 入力セル移動方法の質問です。 セルA5からA10まで入力した後、Enterキーだけで、セルB5まで移動させる設定方法はありますか? (行5から10をA・B・Cと移動したい) 入力範囲をドラッグする方法以外の方法がありましたら、教えて下さい。

専門家に質問してみよう