• 締切済み

重複データを加算する

関数でもVBAでも構いませんので2点ご教示下さい。 Excelに以下のようなデータが入っています。 A列   B列   C列   D列 名前  期限   点数  確認者 1.A列の名前欄には重複した名前が入る場合もあります。  この時、もし名前が重複していたら前回入力したデータの  ポイントに、今回新たに入力しようとしたポイントが加算される。 2.B列の期限が本日を過ぎたらその行全体が赤になり、  D列の確認者セルにデータが入ったら、  赤になった行を色無しに戻す。  現在は別のセルにtoday()関数で今日の日付があり、  その日を越すと行全体が赤になるという条件付書式を  設定してあります。 以上2点になります。宜しくお願い致します。 万が一不足している情報などがありましたら仰って下さい。

みんなの回答

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.1

> この時、もし名前が重複していたら前回入力したデータの > ポイントに、今回新たに入力しようとしたポイントが加算される。 「今回入力された」ことは何で判断するのですか? もし「C列の点数のセルの値が変わったら」だとしたら、その仕様は非常に危ういです。 なぜなら操作をちょっと間違ってしまうと、点数を何回も足し込んでしまう危険があるからです。セルの値をマクロで上書きするのだとすれば元の正しい値に戻せなくなりますよ A列   B列   C列   D列    E列 名前  期限   点数  確認者  累積点数 のように点数と累積点数は列を分けるのがよろしいかと思います。 これならE2セルに  =SUMIF(A$2:A2,A2,C:C) でその行までの累積点数が簡単に求められます。 後半の質問は、条件付き書式の「条件1」を「D列のセルが空白でないとき」に「色なし」にするだけで良いと思います。 (条件2が日期限のチェックになります)

関連するQ&A

  • 【エクセル】データの重複チェック

    次のようなデータが入力されているとします。 A列/B列/C列/D列/E列/F列 1行:都道府県/市区町村/data1/check1/data2/check2 2行:東京/新宿/1/""/1/"" 3行:東京/新宿/2/""/2/"重複" 4行:東京/新宿/3/""/3/"" 5行:東京/渋谷/1/重複/4/"" 6行:東京/渋谷/2/""/5/"" 7行:東京/渋谷/3/""/6/"" 8行:東京/渋谷/4/""/2/"重複" 9行:東京/渋谷/1/重複/7/"" ここで、check1は、 「都道府県」のグループでdata1に重複があれば、「重複」表示をさせます。 また、check2は、 「市区町村」のグループでdata2に重複があれば、「重複」表示をさせます。 例えば、 セルD2=IF(COUNTIF($C$2:$C$4,$C$2:$C$4)>1,"重複","") セルF2=IF(COUNTIF($E$2:$E$9,$E$2:$E$9)>1,"重複","") というように関数を入力して、2行目以下にコピペすればいいのですが、 実際は1万行以上のデータがあり、「都道府県」「市区町村」も多くのグループがあるため いちいち範囲を指定するのも大変です。 そこで、上記関数のように手動で範囲を指定しなくても、 自動で範囲指定をして重複チェックができる良い方法があれば教えてください。 できれば関数がいいのですが、VBAでも構いません。 ご教授のほど、よろしくお願いします。

  • 重複するデータの抽出について(エクセル)

    エクセル2003にて重複するデータの取り出しをしたいのですが、 わからないので教えてください。 例えば   A列   B列   C列    D列    E列・・・ 1  色  1回目  2回目  3回目   4回目 2  赤   あ    a      A       0 3  白   い    b      B       1 4  黄   う    c      C       2 5  黄   え    d      D       3 6  黒   お    e      E       4 7  赤   か    f      F       5 : このデータの中から、別のシートのA1に 赤と入力したら、B1にD列のA・Fを抽出 黄と入力したら、B1にD列のC・Dを抽出をしたいです。 VLOOKUP関数を使用してみたのですが、 赤と入力すると、D列のA(1番上のデータ)のみしか抽出出来ず、Fが抽出されません。 重複するデータがあるのはA列のみで、D列には重複するデータはありません。 わかりにくい文章ですみませんが、よろしくお願いします。

  • 重複データの削除

    お世話になります。 現在、仕事でお客様のデータ(5万件くらい)を扱っています。 しかしデータをエクセルに取り込むシステムに難があり、同じお客様のデータを重複して取り込んでしまうことがあります。 そこで質問ですが、約5万件あるデータの中から効率よく重複データを削除する方法はありますか? 懸念事項は、同姓同名の方は削除してはいけないという点です。 データ項目は「名前」「住所」「生年月日」「性別」とあるので、 同姓同名でも生年月日や住所で判定することができます。 ちなみに私の考えは、 A列に名前、B列に生年月日とすると・・・ 1)ソート:優先順位はA列⇒B列 2)C列にIF(A1=A2,"重複","OK")として行方向へコピー   D列にIF(B1=B2,"重複","OK")として行方向へコピー   E列にIF(AND(IF(C1="重複",D1="重複")=TRUE,"重複","OK")として行方向へコピー 3)E列で"重複"でフィルタリングし、フィルタされた行の削除 スマートではないですが、私の知識では精一杯です。 何かスマートな方法はないものでしょうか? よろしくお願いいたします。

  • エクセルで時間まで含んでいる日付のセルの重複を除いた個数を出したい

    エクセルで時間まで含んでいる日付のセルの重複を除いた個数を出したいのですが B列の行に日付が8/3と言う表示形式でずっと並んでいます。しかしこのセルは日付だけでなく訳あって実際には時間も含んでいます。 標準表示でみると「40028.1234」みたいな感じになっているわけです・・・ それで、B列の行にある日付は重複している日付もあります。それを重複を除いて数えたいのですが・・・ 色々な関数で試したのですがLEN(B3:B100,5)などを入れると使えなくなってしまう関数だったりして結局できませんでした・・・ 表は下記のようになっています。     A   B   C   D ・・・ 3   8/3 4   8/3 5   8/4 6   8/6 7   8/6 8   8/6 9   8/8 ・ ・ ・ 上記の結果を重複を除いて「4」と出したいのですが・・・ 3より上の行には日付とは関係ないものが入力されており 9より下の行にはこれから日々増えていく行があり現時点では未入力です 何行まで増えるかわからないのでB3:B100みたいな感じで指定しておきたいのですが・・・ よろしくお願いします。

  • Excelで同じ値なのに重複の扱いになりません

    Excel 2016で条件付き書式セルの強調表示ルールを使って重複している値を検索しています。私は重複しているセルの背景が赤に変わるように設定していますが、どう見ても同じ値なのに赤にならないセルがあります。 現在の状態としましては、A列に入力してある文字列をJIS関数で変換したものがC列にあり、B列に入力してある文字列をJIS関数で変換したものがD列にある状態で、C列とD列に条件付き書式を適用しています。C1セルとD2セルに同じ「キリン公園」と表示されているとして、どちらも同じに見えるのにセルが赤くなっていません。 C列とD列をセルの書式設定で全て文字列と設定してみましたが、変わりませんでした。 ただ、D2の変換元であるB2セルに入力されている「キリン公園」の「キリン」の部分のみを選択して一度変換キーを押して確定すると、なぜかC1セルとD2セルが赤くなります。このとき、変換キーは押していますが見た目上は何も変わった様子はありません。(もともと全角入力していたものをまた全角で確定しただけ) このような現象の解消方法をご存知でしたら教えて下さい。 ひとつこのようなことが見つかり、他にも漏れがあるのではと不安です。 よろしくお願いします。

  • 空白セルの削除と重複データの加算のマクロ

    シート1の文字列のデータの0又は空白のセルを取り除いて、並んでいる文字列の左と真ん 中の数が重複しているデーターは左端の数を加算して別のシート2のC10からC100のセルに抽出できるマクロを教えて下さい。データーの0は関数で空白にしたいと思っています。 データの並び方はこのままで重複するデーターの加算と空白のセルの削除を一回のマクロで実行したいのです。  E列               空白を削除    0-4-1              0-4-1         2-3-2              2-3-2         2-2-3              2-2-(3) 0                 2-2-(1) 2-2-1              4-1-9 4-1-9              2-1-7 2-1-7              2-2-3 0                 2-3-(5)                (数式がある空白セル)   2-3-(1)            2-2-3              2-3-(4) 0                 0-4-1 2-3-5 2-3-1 2-3-4 0-4-1 シート2のB列10~100に抽出 0-4-1 2-3-2 2-2-4 4-1-9 2-1-7 2-2-3 2-3-10 0-4-1 このように抽出したいのです。

  • エクセルVBAで重複データの削除

    A列、B列、C列・・・とデータが入っていて、B~D列の5行目から10行目が関連の有るデータのかたまりとします。 C~D列の全てのデータが重複している場合に、最初のほうのデータ(行番号が小さいほう)を残すものとして、重複データを削除したいのです。 削除するときは、 B~Dの範囲で削除する。A列等は削除しない。 削除したらデータは上に詰める。 データはソートしない。 ということをやりたいのですが、簡単に出来ますでしょうか? 良く覚えていないのですが、ネット上で色々探してみても、必ずソートしている気がしたので、ソートしない方法が知りたいのですが。

  • EXCEL:列内で重複する名前の複数のデータを名前ごとに1行に並べ替える

    excelデータで、以下のように、1列目に名前が入り、2列目に購入したものが入るデータがあったとします。 A あ B あ B い C う C あ C あ D い これを、 A あ B あ い C う あ あ D い のように、同じ名前のものは1行で、購入したものを右方向へそれぞれ新規セルに追加して書き換えたいのですが、関数を利用してどうしたらよいでしょうか。右方向に追加していくデータの順序はといません。同じ名前の人がいくつ購入しているかはランダムです。VLOOKUPとOFFSET関数を組み合わせるとできそうなのですが・・・よろしくお願いいたします。

  • エクセルの条件付きでデータの種類をカウントする関数

    エクセルの条件付きで重複データや空白データをカウントせず、種類数をカウントする関数の書き方を教えてください。 C列の5行目から14行目に「品目」が入力され、D列に「売れた数」が入力されているとします。売れていない場合は「売れた数」は空白。品目等のデータがない行もあります。品目には重複しているものもあります。 ここで、G5セルに「売れた品目の種類数」を表示させる関数をどのように書けばよいか教えてください。 SUMPRODUCTやCOUNTIFまたはMATCH関数を使っていろいろ試してみましたが、うまくいきません。

  • 【Excel】複数の条件を設定した重複セルの抽出

    【Excel】複数の条件を設定した重複セルの抽出 例えば、A列にA社からD社のデータが行に複数個ずつ並び、B列にそのクライアントに問い合わせた日付が入力されている場合。 A社に問い合わせた日付は1/1、1/3、1/5。B社に問い合わせた日付が1/1、1/1、1/3、1/5、1/5となっているデータで、 B社の3~7行目の日付で重複している1/1と1/5の行のみを抽出する方法ってありますか? 作業自体はB社だけでなく、複数あるので、関数か何かで出来る方法があれば教えていただきたいです。

専門家に質問してみよう