• ベストアンサー

エクセル 特定文字の記入された行全てを取消表示

住所録で、連絡の付かない人の備考欄(eの列)に @ の文字を入力しています。 例えば、10行まである住所録のうち、2行目と3行目のeの列に@が入力されているとき、 2行目と3行目をif関数などを使用して全て取消し表示したいのですが、どうしたらよいでしょうか。 ※実際は住所録は300行ほどあって、いちいち手動で@の文字の列を選んで修正・・・ という作業が手間となっています。

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

  • ベストアンサー
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.4

面倒なオートフィルタなどの操作をすることなく関数で処理するのでしたら分かり易い方法は例えばシート1の1行目には項目名が有り、2行目から下方に住所や氏名のデータがあるとして、作業列を使って対応し、結果をシート2などに表示させることでしょう。 シート1のF2セルには次の式を入力して下方にオートフィルドラッグします。 =IF(E2="",MAX(F$1:F1)+1,"") これでF列にはE列に文字が入力されていなければ上の行から番号が付けられます。 連絡のつく人の住所録をシート2に表示させることにします。 シート2のA2セルには次の式を入力して右横方向にD2セルまでオートフィルドラッグしたのちに下方にもオートフィルドラッグします。 =IF(ROW(A1)>MAX(Sheet1!$F:$F),"",INDEX(Sheet2!$A:$D,MATCH(ROW(A1),Sheet1!$F:$F,0),COLUMN(A1)))

その他の回答 (3)

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

ちなみに条件付き書式を使うのなら, A:E列を列選択する 条件付き書式を開始する Excel2003までなら:  セルの値が →数式が に変えて  右の空欄に  =$E1="@"  と設定し,書式ボタンのフォントで取消線をチェックする Excel2007以降なら:  セルの強調表示からその他のルールで「数式を使用して」で  =$E1="@"  と設定し,書式ボタンのフォントで取消線をチェックする のようになります。 もっともそんなに頻繁に取り消しが発生したり復元する事も無いと思いますので,簡単に絞り込んで手動で設定してしまった方が手っ取り早いです。(この程度の事で,わざわざ条件付き書式で重たくする事もありません) またあなたの考えている「取り消し表示」の具体的なやり方が実際には不明なんですが,手動で設定した方が完全に意図通りに出来ます。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

例えばセル範囲A2:A10を範囲指定 書式ー条件付書式ー数式がで 数式で =A2="aaaa" 書式で「取り消し線」を指定 OK B2:B10を範囲指定 同じく 書式ー条件付書式ー数式がで 数式で =$A2="aaaa" 書式で「取り消し線」を指定 OK -- @を含むを条件にするなら 例データ  A,B列 a@aaa as s sd d fg aaa@aa hj d gh f hj ーーー として A2:B7を範囲指定。 書式ー条件付書式ー数式がで 数式で =NOT(ISERROR(FIND("@",$A2))) 書式で「取り消し線」を指定 OK ーーーーーー >if関数などを使用 などの条件を付けたら絶対出来ない。質問者は関数は、セルの値を対象にするものということをよく判ってない。 横線のような「図形の直線」や2本線を引くとかの左右は絶対に関数では出来ない。

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

データメニュー(Excel2007以降を使っているならホームタブ)でオートフィルタを取り付ける E列の▼をプルダウンして(空白以外)を選択する E列に他に備考を記入していなければ@の行が選択されるので,丸ごと選ぶ 実は他にも備考を記入しているのなら,適宜選択する 取り消し表示を設定する オートフィルタを解除する 以上です。

関連するQ&A