• ベストアンサー

エクセルの関数について

仕事で求人データのエクセルを検品しなければいけません。 会社名、住所、給与、職種、雇用形態などの項目があり、 不要な文字の削除方法を考えています。 それで”この文字が部分的にあったらフラグを立てる”のような関数の式をつくり、フラグがたったものは削除するという方法をとりたいのですが可能でしょうか? 文字的には・・・ ”S-”、”*での*”、”*市*区*” のよなかんじで、上記のような文字をつなげて1つの式にしたいです。 なにかいい方法はありますか?

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

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

A列の2行目から下方に文字列が並んでいるとします。 B2セルには次の式を入力して下方にオートフィルドラッグします。 =IF((COUNTIF(A1,"S*")+COUNTIF(A1,"*での*")+COUNTIF(A1,"*市*区*"))>0,1,"") 使用の際にはSについては半角全角など気をつけることが必要でしょう。 該当する文字がある場合にはB列に1が表示されますのでB列を重点にフィルタなどの操作で1の行を表示させ選択してDeleteキーで削除すればよいでしょう。

その他の回答 (3)

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

>”S-”、”*での*”、”*市*区*” 対象語句の数が多いと関数式の長さが長くなって、複雑化して、事実上やる気がしなくなると思う。 ーー 該当語句をある行のどれかの列のセルに含むと行全体を削除するのか? 語句だけ削除して、残りは残すのか?前者なんだよね。 前者なんだったらSUBSTITUTEは使いにくい。含むかどうかは (1)該当語句を空白にSUBSTITUTEして、長さが元と変化したかみる (2)COUNTIFで結果が>0か見る (3)Findで含まれるか見る 語句数だけ判定を並べて、=IF(OR(第1語句判定、第2語句判定、・・・)、1、””)のような域を作るかだが、(1)(2)(3)とも式が長くなる。FINDは1語句につき=IF(NOT(ISERROR(FIND(・・・)))となって判定が特に長くなる。 列項目を&で結合して、1つの文字列に対し上記のことをやる手もあるかな。 ーー 私ならそういう点で嫌気がさして、VBAでやろうとするだろう。 VBAプログラムなら繰り返しが自動で出来る。 ・語句のセットの判定繰り返し ・列ごとの判定繰り返し(式の中に組み込む形になる) ・行ごとの繰り返し(関数式の場合は式の複写ですね) ・最後に行削除(関数式判定の場合は、目で見て削除操作。関数では行削除は出来ず、タイプとして抜き出しになる。例えば自称「imogasi方式」=>Google照会。) までできる。

  • don9don9
  • ベストアンサー率47% (299/624)
回答No.2

文字列から不要な文字そのものを削除したいのであれば置換機能か SUBSTITUTEやREPLACEなどの関数で置き換えればいいです。 http://www.eurus.dti.ne.jp/~yoneyama/Excel/kansu/moji_2.htm たくさんある行から不要な文字を含む行のみを削除したいのであれば =COUNTIF(対象セル,"S-")+COUNTIF(対象セル,"*での*")+COUNTIF(対象セル,"*市*区*") 上記の式を同じ行の空いているセルに入力してこれを全行に複写 オートフィルタで「0と等しくない」で対象となる行を抽出→行削除 とすればよいと思います。

  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.1

不要な文字の削除でしたら 置換で 検索する文字列: 検索したい文字列 置換後の文字列: 入力しない で削除できますよ。 > 文字的には・・・ > ”S-”、”*での*”、”*市*区*” > のよなかんじで、上記のような文字をつなげて1つの式にしたいです。 よく意味が分かりません。削除したいのですか文字をつなげたいのでしょうか?

関連するQ&A

  • Excelの関数のことです。

    Excelの関数のことです。 Excelのシートに給与金額を入力しています。 その入力用シートには 施設名(A・B・C) 職種名(AA,BB,CC,DD) 勤務形態(a.b) 合計金額 アルファベットは種類数です。 を入力しており 別シートに施設ごとに給与合計をするシートがあります。 そこに 例)A施設の常勤で事務が○人いてその給与合計が○円 という関数が組みたいのです。 教えてください。 よろしくお願いします。

  • EXCELのデータベース関数について(DCOUNTA?)

    EXCELのデータベース関数について(DCOUNTA?) 住所録を作成していますが、ポイントは3点あります。 (1)1年間に入社した人(雇用形態)毎に人数を求めたいのです。 (2)今年度中に退職した方は残したままで、人数を計算したいのです。(退職日を入力) (3)今年度は人が増えるため、全体をテーブルとし、雇用者1人事をレコードとして処理していますが、そのためCOUNTIFSなどは用いず、簡単に計算するためデータベース関数を利用したいと考えています。 DCOUNAの関数は(Database,フィールド,Criteria)となりますが、Criteriaの条件を雇用形態と退職日を横に並べた値としたいが、退職日を空白の人を人数としたい為、空白とすると条件を選んでいないとして雇用形態のみ合致した人数をカウントしてしまうようです。 良い方法あればご教示ください。

  • エクセルの関数についての質問(2)

    セルの文字列にある言葉が含まれている場合のみ何かのフラグを立てて区別したいのですが、良い方法はありませんか。 例えば、以下のようにある列にURLが含まれていたとします。この中で"ne.jp"の文字を含むセルのB列に"1"を立てるような式をB列に入れたいのですが。 関数が分からず、仕方なく目視で作業しており、大変困っております。どなたかお分かりの方宜しくお願いします。   A列        B列    www.yahoo.co.jp www.okweb.ne.jp     1  www.okweb.co.jp www.infoseek.ne.jp    1 www.yahoo.com www.yahoo.ne.jp     1 ・・・・・・・

  • エクセルの関数

    エクセルの関数で  開発営業部 というもじがA1に入っていて、B1に 開発という文字にした場合(つまり、営業部と言う文字を関数を使って削除したいのです) 方法を教えてください

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

    大量の住所録から、一部の文字列を使って検索し対象住所を一覧で表示させることが出来るように関数を組み立てしたいのですが、よくわかりません。どなたかご教授願います。例えば住所録は都道府県から番地まで記載してあります。検索文字列に中央区と入力したら、中央区に該当する住所をすべて一覧として表示させる方法です。vlookupなら完全一致しか表示できませんが、文字の一部で検索し対象住所を一覧に表示させたいのです。よろしくお願いします。

  • 数を数える関数式を教えてください。

    具体的には、 雇用形態と所属部署などのリストから、 「正社員 かつ ○○部」の人の人数を関数で出したいのですが、 countifとandをつかえばどうにかなるかなと思い自分でやってみましたがうまくいきません。 こういう場合どういう関数式になるでしょうか? よろしくお願いします。

  • Excel 関数について

    一番右の1文字だけを削除する関数を調べたら下記の数式がありました。 しかし、1.75は1.7と表示されますが、1.70だと1.となります。0が無視されてしまいます。 原因は何でしょうか?また、良い方法はないでしょうか? LEFT(A 1.LEN(A1 )-1)

  • Excel 関数(2)

    エクセルの関数について再質問です。 下記のような表があります。 (1)、(2)、(3)、(4)はそれぞれ一つのセルに郵便番号、住所がまとめて入力されているもの,いないものがあります。これを郵便番号、住所を別々のセルに表示させる方法をご教示頂きたく思います。  A1 (1)100-0001千代田区日本橋1-1-1    A2 (2) 千代田区日本橋1-1-2    A3  (3)100-0003千代田区日本橋1-1-3 A4 (4) 千代田区日本橋1-1-4 B列に表示させたいと思います。郵便番号がある場合には、substitute(A1,left(A1,8),""),くらいのイメージはできるのですが、郵便番号がない場合の式はどのようにすればいいのでしょうか。ifを使っての条件式でご教示の程お願い致します。 ※A2,A4には郵便番号分の半角8文字のスペースがあります。

  • エクセル関数の読み方を教えてください。

    よわい70歳弱のもうろくジジーです 教えてください 郵便番号付き住所とついてない住所の列から郵便番号を取りだす式を調べているうちに次のような式が見つかりました。 =IF(ISNUMBER(LEFT(A1,1)*1),LEFT(A1,8),"") このうち、 ISNUMBER(LEFT(A1,1)*1)の意味を教えてください。 ISNUMBER関数は、対象の文字列が数値の場合にTRUEを返し、それ以外の時はFALSEを返すと言うことまではわかったのですが 左に数値?(郵便番号は数値か?)を含むセルから数値を判定する時に 引数として「LEFT(A1,1)*1」すなわち「A1セルの左から1文字」に「1」を乗じると「TRUE」を返し、乗じない場合「FALSE」を返すのかを教えてください。 説明不十分の場合補足しますよろしく御願いします

  • エクセル関数の演算後のデータ

    エクセルのVLOOKUP等関数でデータを引っ張ってきたとします。例えば社員番号番を基に名前や住所などを。その場合データが表示されているセルには既にVLOOK等の関数が入力されていますので、セルに入っているのは当然抽出したデータのみではありません。データが うまく抽出された後、そのセルに結果として得られたデータのみを、例えば数値データなら数値データ、文字データなら文字データとしてセルに格納することは出来るのでしょうか?つまりセルの中の関数式を取り去り、結果として出たデータのみを残しておきたいのですが・・・何か特殊な式が必要でしょうか?セルの設定のみで結果データのみを残す方法はありますか?結果をコピーして値のみを貼り付けとする以外にないでしょうか。

専門家に質問してみよう