![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
A 回答 (8件)
- 最新から表示
- 回答順に表示
No.8
- 回答日時:
No.7です。
大変失礼しました。
>実務を考えると範囲を限定し、
>「=IFERROR(VLOOKUP(SUMPRODUCT((COUNTIF(A1,Sheet2!$A$1:$A$1000)=1)*1,
>(Sheet2!$B$1:$B$1000)),Sheet2!B:C,2,TRUE),"")」
>などと1000行程度にするなどの工夫が必要かも知れません。
と書いたのですが、EXCELの最大有効桁数を考慮していませんでした。
EXCELの最大有効桁数は15桁ですので、shhet2の2のべき乗が51行目で
15桁を超えてしまいます。
このため、この手順で処理できるのはsheet2が50行まで(sheet1の行数は、この制限を受けません)、つまり最大仕分け種類は50種類までとなります。
その場合の上記関数は
「=IFERROR(VLOOKUP(SUMPRODUCT((COUNTIF(A1,Sheet2!$A$1:$A$50)=1)*1,(Sheet2!$B$1:$B$50)),Sheet2!B:C,2,TRUE),"")」
となります。
No.7
- 回答日時:
既に回答された方々の中には、「ワイルドカード」と「sumproduct関数」を使ったものがみうけられなかったので、この二つをつかったアイディアを書いておきます。
1.仕分けすべきシートはshhet1とし、自動仕分けのキーとなる文字(列)は、別シート(例えばsheet2)に一覧表として作成するものとします。
2.sheet1のA列に入力するとC列にsheet2で設定した条件に合致した仕分けが表示されるものとします。
3.sheet1のC1に「=IFERROR(VLOOKUP(SUMPRODUCT((COUNTIF(A1,Sheet2!A:A)=1)*1,(Sheet2!B:B)),Sheet2!B:C,2,TRUE),"")」と記述し、下方向へオートフィルを使って入力予定行数分コピーします。
4.sheet2に添付画像のようにキーとなる文字(列)をアスタリスク(*)で囲んだ文字列をA列にリストとして記入します。
5.sheet1のA列に入力された文字列にはsheet2A列のリストの2つ以上が同時に含まれる可能性があり、この場合は、リストのより下に記載された文字(列)を優先することとします。
6.上記5を実現するための仕掛けとしてsheet2のB1に「=2^(ROW()-1)」を記述し、下方向へオートフィルを使ってA列のリスト分コピーします。
7.sheet2のC列にはA列に入力したキーとなる文字(列)に対応する「仕分け」を記入します。
8.countif関数を使って、sheet2のA列の文字列がsheet1のA列の入力値に含まれるか判断します。(含まれれは1が返ります。但し、2つ以上が該当する場合があります。)
9.sumproduct関数を使って、sheet2の上記8の条件を満たす行のB列の合計値を求めます。
10.vlookup関数を使って、上記9の合計値から条件に合致するリストの最も下にある「仕分け」を求めます。
以上の手順で、sheet2にリストを追加していけば、仕分けの種類が増えても対応できます。
ただし、sumproduct関数を使用し、上記3で示した数式では、EXCELの最大行数分を計算するため、PCの性能によっては、仕分けが表示されるまでに時間を要する可能性があります。
実務を考えると範囲を限定し、
「=IFERROR(VLOOKUP(SUMPRODUCT((COUNTIF(A1,Sheet2!$A$1:$A$1000)=1)*1,(Sheet2!$B$1:$B$1000)),Sheet2!B:C,2,TRUE),"")」
などと1000行程度にするなどの工夫が必要かも知れません。
![「エクセルで簡単な自動仕分けがしたいです。」の回答画像7](http://oshiete.xgoo.jp/_/bucket/oshietegoo/images/media/e/142736_5f57b1ac614d6/M.png)
No.6
- 回答日時:
添附圖參照(Excel 2019)
C1: =IFERROR(IF(FIND("高",A1),"交通費"),"")&IFERROR(IF(FIND("→",A1),"交通費"),"")&IFERROR(IF(FIND("現金",A1),"外注"),"")
![「エクセルで簡単な自動仕分けがしたいです。」の回答画像6](http://oshiete.xgoo.jp/_/bucket/oshietegoo/images/media/2/298588_5f51d392a748f/M.jpg)
No.4
- 回答日時:
こんにちは
>含まれてたら
という意味が言葉通り「含まれる」である場合、その判定分が増えるので少しだけ複雑になりますが、基本的にはIF文のネスト(=重複)で可能です。
以下は、「含まれている」を判定する場合の例です
C1セルに
=IF(NOT(ISERROR(FIND("高",A1)))+NOT(ISERROR(FIND("→",A1))),"交通費",IF(ISERROR(FIND("現金",A1)),"","外注"))
※ 単に一致するか否かで判断できるのであれば、式はかなり簡単になできます。
※ 順に判定しているので、例えばA1セルの値が「現金払いで高額」という文言の場合は、「高」が先に判定されるので、結果は「交通費」と表示されます。
No.3
- 回答日時:
お書きの内容だけならIF関数で場合分けするだけでもいいかなと思ったので聞きました。
そう判断して、IFの回答をしたら「実はたくさんあるのでIFでは書ききれません」みたいな展開になるんじゃないかと危惧したので。
条件の後出しは敬遠されるので、どの程度のボリューム感なのかは最初に書いておいた方がいいですよ。
そうであれば対応表を作って、INDEXとMATCHとかでできると思います。
「含まれる」という表現なので実際のデータ内容がわかりませんし、この辺りにしておきたいと思います。
初めての質問でしたので、よく理解していなくて申し訳ありません。
自分の聞きたいことが、なかなか文章におこすと難しくて簡潔にしてしまいました。
抽出文字列が10種類程度で仕分け後の種別が5種類程度くらいの予定になります。
まだまだエクセルも使い慣れてなく、適当に追加すればいけると思い浅はかでした。
わざわざ注意して頂きありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルで、 A1セルに「A」という値、 B1セルに「B」という値が入っています。 どちらも表示形式 5 2023/02/22 23:05
- Excel(エクセル) エクセルの関数式を教えてください。 2 2022/11/29 21:09
- Excel(エクセル) エクセルVBAでセルに表示されているとおりの数値を取得したい(時間の計算結果) 1 2022/03/30 17:52
- Excel(エクセル) ある範囲のセルに何を入力すると、別のセルに○を表示させる 3 2022/04/05 15:51
- Excel(エクセル) Excel 関数 数式 について 2 2022/09/02 21:45
- Excel(エクセル) エクセルのことで教えてください。 A1セルに、 別シートのA1セルが1のときは「A」、2のときは「B 4 2023/02/24 23:08
- Excel(エクセル) エクセルで教えて下さい。 2 2022/05/18 13:00
- Excel(エクセル) Excel表示形式 2 2022/09/09 09:57
- Excel(エクセル) エクセルの数式で教えてください。 5 2023/02/10 15:11
- Excel(エクセル) エクセルの数式で教えてください。 1 2023/02/08 09:05
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel関数-文字列で自動作成さ...
-
エクセルの関数について教えて...
-
Excelデータをコピペして、ペー...
-
職場の人から聞かれており、こ...
-
ユーザー定義関数をアドイン登...
-
Excelで50個のセルに同じ文字を...
-
スプレッドシート、Excelでの数...
-
Microsoft Officeの中古は信用...
-
エクセルで不等号記号(≠)が上に...
-
スプレッドシートで使う数式を...
-
エクセルでの特別な文字を上に...
-
エクセル日付 文字列の関数がエ...
-
A列とB列を参照してC列に連番を...
-
エクセルVBA、別ブックへ転記す...
-
各ページの1番上の表示について
-
エクセルでセルに標準で入力さ...
-
EXCELの質問です 119から足した...
-
pdfの表をexcelにはりつけて計...
-
Excelのif関数で文字が見えなく...
-
【マクロ】アクティブセルにブ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBA、別ブックへ転記す...
-
エクセルでの作業計算方法について
-
時間によってファイル名が変わ...
-
【関数】適切な文字数の数字を...
-
Excelについて教えてください
-
エクセル初心者です 関数の入れ...
-
【マクロ】ファイル名の変更に...
-
UNIQUE関数が使えないバージョ...
-
エクセルの計算
-
【関数】先頭だけにある、半角...
-
Excelで、決まった行を繰り返し...
-
Excelでセルの値が同じか...
-
LOOKUP関数を使えばいいのでし...
-
Excel
-
はがきについて。
-
エクセルの条件付き書式につい...
-
エクセルのデーターが2か月前の...
-
エクセル②
-
エクセルで「-0.0」と表示さ...
-
Microsoft1Officeの互換ソフト...
おすすめ情報