• ベストアンサー
  • 困ってます

条件にあうセルを入力不可にしたい。

セルを検索し、ある文字列が入っているセルの行全体を入力不可の状態にしたいのです。 条件に合わない場合は、そのセルは入力するので、数式は使えないと思います。 自分ではぱっと思いつかないのですが、VBAでできるような気がするのですが・・・。 他力本願で申し訳ないですが、分かる方いましたら、ぜひ教えて下さい。 よろしくお願い致します。

共感・応援の気持ちを伝えよう!

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

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

こんにちは  入力規則でいかがでしょうか?  1:10行について、同一行内のセルに aaa という文字列が入っている場合、その行全体を入力不可にするとします。 1.列番号1をクリック、列番号10までをドラッグして選択 →セルA1がアクティブで1:10を選択している状態 2.メニュー[データ]-[入力規則] 3.[設定]タブで[入力値の種類]を ユーザー設定 に 4.[数式]に以下を入力 =OR(ISERROR(MATCH("aaa",1:1,0)),AND(A1="aaa",COUNTIF(1:1,"aaa")=1)) 5.Enter  入力規則はXL97以降の機能です。

参考URL:
http://www2.odn.ne.jp/excel/

共感・感謝の気持ちを伝えよう!

質問者からのお礼

ご回答ありがとうございます。 大分前にした質問なので、これについては別の方法で回避した気がします・・・。(もう、思い出せない・・・。すみません。) 詳しく教えていただいたので、知識として蓄積し、次に役立てたいと思います。 ありがとうございました!

関連するQ&A

  • セルに数式を入れずに計算結果のみを入力

    B2:D11まで入力された文字と数値がありB,C列のマッチした文字の計算値をH列にいれたいのですが現在H列はVBAによりセルに数式が入っておりますが計算結果のみをH列に入力したいのですが尚、図では11行までですが行数が多い時を踏まえてVBAコードをご教授願います。

  • Excel2007 条件付き書式の設定について

    よろしくお願いします。 列はAからG列まであり、行は1から10行まであるとします。 例えば2Fの値として特定の文字列が入力された場合に、 その行全体をマスク(色)したいのですが、条件付き書式 を設定するときに選択されていたセル(1つ)のみしか反映 されません。(行全体を指定しても反映しない) 方法としては、「数式を使用して、書式設定するセルを決定」 の「次の数式を満たす場合に値を書式設定」に 「=2f="文字列"」のように入力して書式設定し、 反映して欲しい行全体を適用範囲として選択しています。 Excel2003ではできていた(はず)のですが。 アドバイスのほどよろしくお願いします。

  • Excel 条件付き書式◆ 同じ行の特定のセルを指定するには

    A列には、ずらーっと、日付の数値が入っています。 B列には、「その日の行動スケジュール」の文字列が入っています。 ”今日”になったら、その日付に該当するB列の「行動スケジュール」だけ文字の色を変えたいと思いました。 このとき、列全体を範囲指定して、「条件付き書式」を設定しようと思ったのですが、数式の書き方がわかりません。 まず、B列のBのところをクリックして列全体を指定した上で、「条件付き書式」の設定のダイアログを出し、「数式が」を選択すればいいだろうというところまではわかります。 しかし、数式において、どのように記述すると、”B列の特定のセルと同じ行にあるA列のセル”だけを選択できるようになるのかがかわかりません。 おそらく、下の●のところに、同じ行にあるA列のセルだけを指定するための記号が入ると思うのですが、手本がどこにも見つかりません。 =●●=today()

  • VBAで複数列セルに入力されている文字を一行に

    こんにちは。VBAにて下記イメージの複数列セルに入力されている文字を一行に変換しメモに出力すると同時に出力された一行の文字列をコピーした状態にしたいです。セルに記載された文字は「,」カンマで区切った状態で範囲はA3セルからA50位となります。また、セルが結合されていたり空白が存在したり様々です。大変申し訳御座いませんがご教授宜しくお願いします。 あああ → あああ,いいい,ううう,えええ,おおお・・・ いいい ううう  えええ おおお ・ ・ ・

  • VBAマクロ・・同一セルの検索と検索したセルの操作

    VBAマクロ・・同一セルの検索と検索したセルの操作  VBAのほぼ初心者です。  決められたセル(たとえばE100)に入力された文字列と同一の文字列を その列内の上(E1~E99)で検索する。 そして、検索できれば(たとえばE30)そのセルがある行(行30)を削除する。 なお、複数検索されれば、検索されたすべてのセルに対応する行を削除する。  というようなことをVBAのマクロで作成したいです。 FindメソッドとDo..Loop Whileを使って試行錯誤してみたのですが、うまくいきません。。  いい方法があれば、是非教えていただきたいです。  どうぞよろしくお願いいたします。

  • 条件に合ったセルにカーソルを飛ばしたい

    こんにちわ お世話になります。 エクセルの表(列も行も項目が沢山あります)にデータを入力する時に、いちいちスクロールするのも大変です。 そこで、列の条件と行の条件をあるセルに入力したら条件に合ったセルにカーソルを飛ばすというようなことは出来ないでしょうか? 例えば  列の条件   お   行の条件(1) 2  →と条件をセルに入力  行の条件(2) C      あいうえおかきくけこさしすせそ・・・ 1 A   B   C  2 A   B   C      ■ ←ここにカーソルが移動    3 A   B   C   ・   ・   ・ こんな感じなのですが・・・ 何か良い案は無いでしょうか?

  • エクセルの条件による数式の入力

    こんにちは!既存でも見つからなかったので質問させていただきます。どなたかご教授ください。 ●ひとつのブック内に2枚のシートがあります。sheet1とsheet2とします。sheeet1にしかるべき数式を入力したいです。 Sheet2には例えば名簿があるとします。明石から始まり渡辺まで500人ほどの名簿です。これはA列に1から順に名前、B列の1からは年齢が入っています。 Sheet1のA列1行に数式を入れます。A-1には文字列で【わたしは明石です。】と順にA-1~A-500まで順番に入れます。ただしこのとき年齢が18歳未満の時これは入力したくありません。さらにそこには空白のセルを必要とします。IF関数を使うとは思うのですが、このsheet2の列Bの年齢を条件でみっあった時のみを抽出して数式を入力する数式がわかりません。どのようにしたらよろしいでしょうか?

  • エクセル VBAで入力

     エクセル初心者です。 条件付き書式で一つのセルに特定の文字列を入力した際に、そのセルと任意の法則性のある複数のセルに(入力内容は無関係でセルの行・列に法則性があります)特定の塗りつぶしを行いたいのですが、どのようにすればよいのでしょうか。 条件付き書式をすべて設定する(手打ち)するのが最も確実で間違いの内方法ではありますが、新規に行・列を挿入した場合、その行・列には条件付き書式が設定されていませんので、意図した作用を起こさなくなってしまいます。 上記ではよくわからないと思いますので、具体的な例を入れさせていただきます。 例)) 任意のセル(A13)に特定の文字列(OK)と入力する。 特定文字列に反応して、そのセルの列に(A12からE12、F12からH12)赤色の塗りつぶしを入れる。 上記は1セルに対して行われますが、VBAを使用してA12からA5000までを検索対象として持たせて、それぞれのセルの列に対して塗りつぶしを入れられるようにしたいと思っています。

  • エクセルVBAについてお尋ね致します。数式が入力されたセルを異なるセル

    エクセルVBAについてお尋ね致します。数式が入力されたセルを異なるセルの条件によって「値」のみ残す方法を模索しております。 使用する列および行の例 列=A、B  行=5~10、15~20、25~30(A列、B列共通) 上記対象セルの内訳 A列(参照セル)=数値 ※空欄の場合もあります B列(変更セル)=数式(Aセル数値 * ○○%) ※B1セルの例:=IF(A1="","",A1*10%) のような数式が記入されております。 (例) Private Sub CommandButton1_Click() ’参照セルの指定 ("A5:A10","A15:A20","A25:A30") のようなコード*** ※現在はAセルの範囲としておりますが、後に変更の可能性を有しますので範囲指定が可能な形式を望みます。 ’変更セルの指定 セル指定のコード*** ※現在はBセルとしておりますが、これも後に変更の可能性を有しますのでA・B・Cのような入力(もしくはA=1、B=2、C=3)による指定可能な形式を望みます。 ’参照セル(Aセル)に数値が入力されている場合、数式から得られた変更セル(Bセル)の値を”値のみ”で残す。 実行コード*** ※参照セル(Aセル)が空欄の場合は変更を望まないので、変更セル(Bセル)は何も致しません。(数式のまま残す) End Sub このようなマクロを望んでおります。 イメージとしては数値がAセルに入力されていた際に同じ行のBセルにおいて右クリックコマンド内〔コピー〕 → 〔形式を選択して貼り付け〕 → 〔値〕の貼り付けを行うことをご想像下さい。 列や行の変更が予想されるので変更が可能なことを望んでおりますが、結果が伴えば他の体裁は気に致しません。 お手数ですがご教授宜しくお願い致します。 以上

  • EXCEL 2003で条件に合った合計を求めたい

    ______A ____B____ C_____D 1___111___ 1 ___10___ 60 2___111___ 2 ___10 3___222___ 2 ___10 4___333___ 1 ___10 5___333___ 2 ___10 6___333___ 3 ___10 7___444___ 1 ___10 8___444___ 3 ___10 9___555___ 1 ___10 Excel 2003環境において、上記A1:C9を対象に関数で下記条件を元に数式をD1に入力して値を求めたいです。 条件: A列の同じ値のセルを一つのグループとし、かつその中で、B列で1から始まる連番となっているグループを対象にC列のセルを合計する。 上記のセル範囲で条件に合う行は1,2,4,5,6,9行目で答えは60になります。 SUMPRODUCT関数やIF関数を併用してみましたが、うまく作ることができませんでした。 なんとか作業列やVBAを用いずに一つの数式で済ませたいです。 よろしくお願いします。