• ベストアンサー

エクセルの日付の重複の除去

エクセルの日付の重複の除去 シート1のA列に以下のように日付が入っています。 データはAの100位まで日付があります。 A列 1/1 1/2 1/2 2/1 2/1 2/2 これを同じシートのB1に以下のようにまとめて重複分を除いた形で 表示したいのです。 B1セル→1/1 1/2 2/1 2/2 各日付の間は一文字分のスペースです。 よろしくお願いします。

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

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんばんは! 無理やりって感じです。 VBAになってしまいますが・・・ 操作したいSheet見出し上で右クリック → コードの表示 → 白い画面がでますので ↓のコードをコピー&ペーストしてマクロを実行してみてください。 尚、A列のデータは1行目からとしています。 Sub test() Dim i As Long Dim str, buf As String For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row If WorksheetFunction.CountIf(Range(Cells(1, 1), Cells(i, 1)), Cells(i, 1)) = 1 Then str = WorksheetFunction.Text(Cells(i, 1), "m/d") buf = buf & " " & str End If Next i Cells(1, 2) = buf End Sub 一旦マクロを実行すると元に戻せませんので別Sheetにコピー&ペーストしてマクロを試してみてください。 当然のことながらB1セルは文字列になります。 他に良い方法があればごめんなさいね。m(__)m

aidorumary
質問者

補足

ありがとうございます。 参考になります~。

その他の回答 (3)

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

こういうのはB列の複数行に出すことで、我慢すること。 データーフィルターフィルタオプションの設定のウインドウで、「指定した範囲」にチェック、条件設定セルは空白で良い、抽出範囲はB列を指定し、「重複するレコードは無視する」にチェックを入れておく。 B列の結果をB1セルに入れるとなると、&やCONCATINATE関数とスペースを使って結合するが、行数が多く、数が不定なので関数ではやりにくい。 ーーー VBAを勉強するならやさしいが、VBA出来るくらいなら質問しないだろうな。

  • shinkami
  • ベストアンサー率43% (179/411)
回答No.2

稚拙とは思いますが、提案させていただきます。 日付は昇順であることが前提です。 仮計算列(仮にZ列)で文字連結をしてこれの最終行のセルをセルB!で参照する Z2=IF(A2="","",TEXT(A2,"M/d")) Z3=IF(OR(A3="",A2=A3),Z2,Z2&TEXT(A3," m/d")) セルZ3をZ4以降にコピペ Z列の最終セルを参照 結果確認後Z列を非表示にする

aidorumary
質問者

補足

ありがとうございした。 うまくできました。 ただ、B列の最下行のデータの取り出しが うまくいきませんでした。 お願いします。

  • mate0128
  • ベストアンサー率30% (31/103)
回答No.1

各セルの横に表示させるのであれば、そのまま、書き込めばいいのですが、一つのセルに日付を表示させるには、関数を使います。ただしこの場合は、後から、A列の文字を削除しないと言う事が前提です。もし、削除しなければならないのだったら、文字入力してください。 テキスト関数を使います。 =text(A2,m/d) &" "& text(A3,m/d) & " "&text(A5,m/d)&""&text(A7,m/d) 以上のように入力すれば、A列を参照して、日付が表示されます。

関連するQ&A

  • excel、重複があるかを調べたい

    関数初心者です。質問させて下さい。 excelでsheet1のAセルに文字列を入力しました。 このsheet1内はsortしフィルターをかけたので重複はありません。 1000行程の語句ですが、このsheet1内の語句を別sheetや別のexcelファイルで重複がないかを 調べたいのですが、良い方法が分かりません。 教えていただけますでしょうか。 宜しくお願いします。

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

    エクセルで時間まで含んでいる日付のセルの重複を除いた個数を出したいのですが 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みたいな感じで指定しておきたいのですが・・・ よろしくお願いします。

  • エクセルマクロで日付検索について

    エクセルのマクロで日付を検索するマクロについて質問です。 ブックAのシート1のA列に A1 2017/3/13 A2 2017/4/1 A3 2017/4/19 A4 2017/5/16 A5 2017/7/17 A6 2017/9/5 というような日付が入っています。 ブックBのシート1のA1セルに2017/6/3と入力してマクロを実行した際に その日付に一番近い一つ前の日付を探し、見つけた日付のB列のセルを ブックBのシート1のA2セルに表示したいです。 今回の例であれば2017/6/3に対してブックAのシート1のA列はA4セルが当てはまり その当てはまったA4セルの1つ横のB4セルの内容をブックBのシート1のA2セルに表示するということです。 よろしくお願いします。

  • EXCELの重複チェック

    エクセルで重複する文字列のセルに色付けしたいです。ただ重複する文字列を同色でカラーリングすることはできるのですが、同じ文字列毎に色を変えることは可能でしょうか。 下の例でいうと、Aは赤、Bは青、Cは緑、、、、というイメージです。 例) A B B C C C C A B C

  • エクセルで「日付」を表示する件

    エクセルで「日付」を表示する件 シート(1)の「A1」に「この事件は」の文字列。「B1」に書式を日付にして「平成22年8月1日」と入力。「C1」に「に起こりました」と入力。 複数のセルの文字列と日付を一つのセルに合わせて「この事件は平成22年8月1日に起こりました」のようにしたいので、「D1」に「=A1&B1&C1」と入力すると、「この事件は40391に起こりました」と表示されてしまいます。 解決方法を教えて下さい。 エクセルのバージョンは2002です。

  • 【エクセルVBA】条件に一致した項目の数を別シートへ表示

    はじめまして。VBA初心者です。 sheet1のA列に日付(一ヶ月分)、B列に製品名 sheet2のB2セル~AF1セルに日付、A2セル~A10セルに製品名 が入っています。 Sheet1の製品名の数を日付ごとにカウントして、その結果をSheet2の 各日付へ入力するVBAを作成したいのですが、うまくいきません。 分かり難い質問で、大変申し訳ありませんが、どなたか教えて下さい。 よろしくお願いします。

  • Excelで違うシートから日付を引っ張ってきたい

    すいませんが教えてください。 EXCELでAのシートとBのシートがあって、 Aのシートに日付を入力していきます。 その日付をBシートに引っ張ってきたいのですが、 ='Aシート'!A2 とBシートのA2に入れると Aシートの空白セルでは 「1月0日」となってしまいます。 空白セルは同じように空白セルにしたいのですが、 やり方がわかりません。 よろしくお願いします。

  • エクセルで重複を除いた日付のカウント(条件付き)

    過去の記録にもなく、困っています。 エクセルで(A列の)日付をカウントしたいのですが、重複して困っています。 「C1」に任意の日付(○月○日)を入れると、「D1」に○月○日以下の日付がカウントされるようにしたいのです。      A     B    C     D 1  4月5日         2  4月6日 3  4月6日 4  4月6日 5  4月7日 6  4月7日 7  4月8日 D1に =COUNTIF(A:A,"<="&C1) といれてみると、重複してカウントされてしまうのですが、重複を除いてカウントがしたいのです。 ちなみに(C1)に「4月7日」を入れると、(D1)に「3」になるようにしたいのに、重複して「6」となってしまいます。 おいそがしいと思いますが、どうかご教授をお願いいたします。

  • エクセル2000で教えて下さい。

    エクセル2000で質問です シート1のA列に日付が入っています。 B列に東京、大阪・・・数種類の文字が入ります。 C列に数字が入力されています。 日々それぞれ入力されていく形になっています。 さらにシート2のA列に日付が入っています。 B列には予めすべて大阪と入力されています。 C列には数字が入るようになっているのですが 例えばシート1のセルA3に10月18日と入ってB3に大阪と入った時には C3に入った数字と同じ数字がシート2のC3に入力されるようにしたいのです。 シート2のC3と言うのはA3にシート1のA3と同じ日付が入って いるから隣のC3に入る形です。 上の場合もしA8に10月18日と入っていればC8にシート1のC3と 同じ数字が入るようにしたいのです。 シート1のB列に大阪以外の文字が入った場合は無視です。 大阪と入った場合のみです。 どなたか御教授下さい。 補足が必要なら申し付け下さい。

  • エクセル 重複調べる

    エクセルの重複を調べる方法について何ですが、 a1,b1,c1に文字列が入っているのですが、 a1~c1の中に重複しているものが一つあったら(a1とc1が同じ、もしくはa1とb1が同じ、b1とc1が同じ)d1に1と表示して、重複無しだったら0と表示する関数はありますか?

専門家に質問してみよう