[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『Excelについて』(Gost)
すいませんが皆様の知恵をお貸しください。
SheetにA列に協力会社CDとB列に会社名が入力されています。 会社名で同じ会社名でなおかつ協力会社CDも同じデータがある場合があるのですが それらを一つにまとめたいと思っています。 Excelでそういったことは出来るのでしょうか? 教えてください。
A B 1 101 A社 2 102 B社 3 103 C社 4 102 B社 ←102のB社は2行目に存在するので削除 5 101 A社 ←101のA社は1行目に存在するので削除 6 101 A社1 ←削除対象外。別会社とする。
協力会社CDは1桁から8桁まで存在します。 会社名は半角全角を区別してください。 よろしくお願いします。
作業列を作成し、↓のような表にして 「作業列2」にオートフィルタをかけ「削除」のみ表示 その行だけ削除後、作業列削除
[A] [B] [C] [D] [1] コード 社名 作業列1 作業列2 [2] 101 A社 101 A社 削除 [3] 102 B社 102 B社 削除 [4] 103 C社 103 C社 [5] 102 B社 102 B社 削除 [6] 101 A社 101 A社 削除 [7] 101 A社1 101 A社1
C2 =A2&" "&B2 D2 =IF(COUNTIF(C:C,C2)>1,"削除","")
(Ohagi)
あまりにも行の数が多いので会社名が同じかどうか見つけにくいので 簡単な方法を教えてください。
(Gost)
(1) C1セル =A1&"#"&B1 これをフィルダウン
(2) D1セル =NA() ※ エラーを出させるだけ
(3) D2セル =LOOKUP(ROW(C2)-1,FIND(C2,C$1:C2)*ROW(C$1:C2)) これをフィルダウン
(4)D列全体を選択して、Ctrl + G でジャンプし、 セル選択→数式に黒目を入れ、 数値だけ残して、「文字、論理値、エラー値」のチェックを外し、 [メニュー]編集→削除→行全体 不要化したC,D列をクリアー
行 _A_ __B__ ____C____ _D__ → 行 _A_ __B__ ____C____ _D__ 1 101 A社 101#A社 #N/A 1 101 A社 101#A社 #N/A 2 102 B社 102#B社 #N/A 2 102 B社 102#B社 #N/A 3 103 C社 103#C社 #N/A 3 103 C社 103#C社 #N/A 4 102 B社 102#B社 2 4 101 A社1 101#A社1 #N/A 5 101 A社 101#A社 1 5 101 a社 101#a社 #N/A 6 101 A社1 101#A社1 #N/A 7 101 a社 101#a社 #N/A ※ A列の元データも無くなります
(半平太) 私の案は間違っていました。 m(__)m
子会社が先に来ると、親会社が削除対象になってしまいます。
Ohagiさんの方法で1行1行削除は大変、ということでしょうか?
でしたら、オートフィルタで「削除」のみ表示した後、 表全体(タイトルは除く)を選択し、 [Atl]+[;]とすると「可視セル」のみ選択されます。 それで削除をすれば簡単ではないでしょうか? (gloomy)
私の勘違いでした。 皆様ありがとうございます。 出来ました。
(Gost)
>会社名は半角全角を区別してください。
これは何だったのですか? (半平太)
(Ohagi) (gloomy)のやり方で削除をやってみました。 会社名が同じやつを全部削除するのではなく、一つだけは削除しないで残しておきたいのですが どうも同じ会社名はすべて削除されてしまいます。
会社名の中に同じ名前でも半角カッコがあったり、半角スペースが空いている場合があるので そのような場合を区別してほしいということでした。
(Gost)
A社とa社は、同じでよければ、
(1) C1セル =A1&"#"&B1 (2) D1セル =IF(MATCH(C1,C$1:C1,0)=ROW(C1),"","削除")
行 _A_ __B__ ____C____ _D__ 1 101 A社 101#A社 2 102 B社 102#B社 3 103 C社 103#C社 4 102 B社 102#B社 削除 5 101 A社 101#A社 削除 6 101 A社1 101#A社1 7 101 a社 101#a社 削除 8 101 ア社 101#ア社 9 101 ア社 101#ア社 10 101 A社 101#A社 削除 (半平太)
※「ア社」と「ア社」が同じとの判定なら、
(1) C1セル =ASC(A1&"#"&B1) に変更して下さい。 (半平太)
→=IF(COUNTIF(C2:$C$2,C2)>1,"削除","")
数える範囲を変えてあげてください
(Ohagi)
(洋平太) A社とa社、ア社とア社も別物と考えてください。
(Ohagi) B列の順番はバラバラでどこに何が入っているかわからないので、一つずつ範囲を変える方法だと 手間がかかってしまう気がするのですが・・・・。 考え方が間違ってましたらすいません。
(Gost)
やってみましたか? > B列の順番はバラバラでどこに何が入っているかわからないので、一つずつ範囲を変える方法だと >手間がかかってしまう気がするのですが・・・・。 D2に提示の数式を入れてフィルダウンで該当箇所に削除と表示されますので それをオートフィルタなどで選んで削除すればご希望のものになるかと。 ただ、Ohagiさんの数式でも半角/全角は同一とみなされてしまいますが・・・ 回答でなくてすいません。。。 (hana)
C1セル =A1&"#"&B1 D1セル =IF(ISNA(LOOKUP(ROW(C1)-1,(1/EXACT(C1,C$1:C1))*ROW(C$1:C1))),"","削除")
行 _A_ __B__ ____C____ _D__ 1 101 A社1 101#A社1 2 102 B社 102#B社 3 103 C社 103#C社 4 102 B社 102#B社 削除 5 101 A社 101#A社 6 101 A社 101#A社 削除 7 101 a社 101#a社 8 101 ア社 101#ア社 9 101 ア社 101#ア社 10 101 A社 101#A社 削除 (半平太)
Gostさん
・「さん」をつけませんか? ・ニックネームを確認しませんか?
ごめんなさい、ちょっと気になりました。(のり)
と、おっしゃられているので試されていないようですね? 折角回答をしてもらっているですから、試してから 「ダメでした」「出来ました」のレスを付けた方が良くないですか?
試していれば >一つずつ範囲を変える方法だと と言うお返事は無いと思いますよ?(^_^;) 半角全角を意識するのであれば、半平太さんがご提示くださっている ものを試されてはいかがでしょうか?
(Ohagi)
皆様のご指摘ありがとうございます。 おっしゃるとおりです。
ご迷惑をおかけしてすいませんでした。
(Gost)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.