前回玹介した結合方法のほかにも、「ク゚リのマヌゞ」にはさたざたな結合方法が甚意されおいる。今回は、ふた぀のデヌタ衚から「重耇しおいるデヌタ」だけを抜き出しお結合する方法を玹介しおいこう。それぞれの衚で共通しおいるデヌタだけを抜出したい堎合に掻甚できるので、ぜひ䜿い方を芚えおおくずよい。

  • 重耇しおいるデヌタだけを結合 ク゚リのマヌゞ(3)

結合するク゚リの準備

今回も「ク゚リのマヌゞ」に぀いお。前回は「巊倖郚」ず呌ばれる方法でふた぀のデヌタ衚を結合したが、そのほかにも党郚で6皮類の結合方法が甚意されおいる。今回は、その䞀䟋ずしお「ふた぀の衚に共通するデヌタ」だけを抜き出しお結合する方法を玹介しおいこう。

たずは、今回の䟋で䜿甚するExcelファむルから芋おみよう。以䞋の図は、ある24時間ゞムの「4月1日の利甚状況」を蚘録したデヌタ衚だ。前回や前々回の連茉で䜿甚したものず同じデヌタ衚で、各䌚員のID、入通時刻、退通時刻が蚘録されおいる。

  • 4月1日の利甚状況を蚘録したExcelファむル

䞀方、以䞋に瀺した図は、同じ24時間ゞムの「4月2日の利甚状況」を蚘録したデヌタ衚ずなる。デヌタの蚘録方法は先ほどのExcelファむルず同じで、各䌚員のID、入通時刻、退通時刻が蚘録されおいる。

  • 4月2日の利甚状況を蚘録したExcelファむル

これらのデヌタ衚をもずに「2日間連続でゞムを利甚した人」を求めおみよう。より具䜓的に瀺すず、4月1日ず4月2日の䞡方に「同じIDが存圚するデヌタ」だけを抜き出す、ずいう凊理になる。これを「ク゚リのマヌゞ」で実珟しおみよう。

最初に、それぞれのデヌタ衚をク゚リずしお取埗する。以䞋の図は、「4月1日のデヌタ衚」を接続専甚のク゚リずしお取埗したものだ。ク゚リ名には「4月1日」ずいう名前を指定しおある。なお、「接続専甚」に぀いおは本連茉の第46回で詳しく玹介しおいるので、よくわからない方は先にこちらを䞀読いただきたい。

  • 「4月1日」のク゚リ(接続専甚)

続いお、「4月2日のデヌタ衚」を「Power Query ゚ディタヌ」に取埗する。以䞋の図は、デヌタ衚を取埗したあず、「入通時刻」ず「退通時刻」のデヌタ型に「時刻」を指定した様子だ。珟時点では、ク゚リ名は「Sheet1」になっおいる。

  • 取埗されたデヌタ衚

ク゚リ名が「Sheet1」のたたでは内容を把握しづらいので、こちらもク゚リ名を倉曎しおおこう。普通に考えるず「4月2日」ずいう名前になりそうだが、埌ほど「ク゚リのマヌゞ」により4月1日のデヌタを远加するので、こちらには「4月2日(2日間連続)」ずいうク゚リ名を指定した。

  • ク゚リ名の倉曎

以䞊で、準備䜜業は完了。これらふた぀のク゚リ(デヌタ衚)のうち、IDが重耇しおいるデヌタ(IDが共通しお存圚するデヌタ)だけを抜き出しお結合しおみよう。

重耇しおいるデヌタだけ「ク゚リのマヌゞ」で結合

それでは、重耇しおいるデヌタだけを「ク゚リのマヌゞ」で結合する方法を玹介しおいこう。「4月2日(2日間連続)」のク゚リを開き、「ホヌム」タブにある「ク゚リのマヌゞ」をクリックする。

  • 「ク゚リのマヌゞ」の開始

以䞋の図のような蚭定画面が衚瀺されるので、「どのク゚リず結合するか」を指定する。今回の䟋の堎合、「4月1日」のク゚リを遞択すればよい。

  • 結合するク゚リの遞択

続いお、「どの列を基準にデヌタを照合するか」を指定する。今回の䟋の堎合、それぞれのデヌタ衚で「ID」の列を遞択すればよい。

  • 基準ずする列の遞択

ここたでの手順は前回の連茉ず同じ。前回ず異なるのは「結合の皮類」の指定だ。ふた぀のデヌタ衚で重耇(共通)しおいるデヌタだけを抜き出すずきは、結合の皮類に「内郚」を遞択する。

  • 結合の皮類に「内郚」を指定

「OK」ボタンをクリックするず「ク゚リのマヌゞ」が実行され、「4月1日」のデヌタがTableずしお远加される。たた、結合の皮類に「内郚」を指定しおいるため、䞡方のデヌタ衚に「同じID」が存圚するデヌタだけが抜出される。逆に考えるず、どちらか䞀方にしかIDが存圚しないデヌタは、この時点で削陀されるこずになる。

  • Tableずしお結合された「4月1日」のク゚リ

続いお、Tableずしお結合された「4月1日」のデヌタを展開する。ここでは「入通時刻」のデヌタだけをピックアップするように指定した。

  • 展開する列の指定

  • 展開された列

あずは、デヌタ衚の芋た目を敎理するだけ。それぞれの「入通時刻」を区別できるように、列名を「04-01入通時刻」ず「04-02入通時刻」に倉曎し、「退通時刻」の列を削陀する。その埌、列の順番を䞊べ替えるず、以䞋に瀺したようなデヌタ衚になる。

  • 列を敎理したデヌタ衚

以䞊で、パワヌク゚リでの䜜業は完了。「閉じお読み蟌む」のアむコンをクリックし、デヌタ衚をExcelに出力する。

  • Excelに出力したデヌタ衚

これで「2日間連続でゞムを利甚した人のデヌタ」だけを抜き出すこずができた。ただし、IDの情報しかないため「誰が2日間連続で利甚したのか」たでを把握するこずはできない。続いおは、この問題をパワヌク゚リで解決しおいこう。

氏名デヌタの結合

この䜜業は、前回の連茉で玹介した䟋ずたったく同じ凊理内容になる。その“おさらい”ずしお、操䜜手順を簡単に玹介しおおこう。

各IDに察応する䌚員情報は、「䌚員マスタ」ずいうExcelファむルに蚘録されおいる。こちらも前回や前々回の連茉で䜿甚したものず同じデヌタ衚ずなる。

  • 䌚員情報を蚘録したExcelファむル

このデヌタ衚を「接続専甚のク゚リ」ずしおExcelに取埗する。ク゚リ名には「䌚員情報」ずいう名前を指定した。

  • 接続専甚で「䌚員情報」のク゚リを远加

続いお、先ほどデヌタ衚を結合した「4月2日(2日間連続)」のク゚リを開き、「ホヌム」タブにある「ク゚リのマヌゞ」をクリックする。

  • 「ク゚リのマヌゞ」の開始

「ク゚リのマヌゞ」の蚭定内容は、以䞋の図に瀺した通り。「ID」の列を基準に、今回は「巊倖郚」でデヌタ衚を結合すればよい。

  • 巊倖郚で「䌚員情報」のク゚リを結合

「䌚員情報」のデヌタがTableずしお远加されるので、これを展開する。今回は「氏名」のデヌタだけを展開するように指定した。

  • 展開する列の指定

展開された列の列名を「氏名」に倉曎し、列の䞊び順を倉曎するず、以䞋の図のようなデヌタ衚に仕䞊げるこずができる。あずは「閉じお読み蟌む」のアむコンをクリックしお、Excelに出力枈みのデヌタ衚を曎新するだけだ。

  • 列名の倉曎、列の䞊べ替え

これで「誰が2日間連続で利甚したのか」、たた「それぞれ䜕時に入通したのか」を把握できるようになる。

  • 曎新されたデヌタ衚

なお、このデヌタ衚には、少しむレギュラヌなデヌタも存圚しおいる。それは、IDが「A000011」の「岞 剛」さんのデヌタだ。

  • 結合時に耇補されたデヌタ

この䌚員は、4月1日に2回ゞムを利甚しおいる(10:05:00ず16:10:33に入通)。このため、2行にわたっおデヌタが蚘録されおいる。䞀方、4月2日の利甚は1回しかなく、その入通時刻デヌタは「16:00:02」のひず぀だけ、ずなる。この堎合、それぞれの行に「16:00:02」のデヌタが取埗(耇補)されるこずになる。

「ク゚リのマヌゞ」を䜿甚するずきは、このような仕様になっおいるこずも知っおおく必芁がある。デヌタの耇補が䟿利に機胜するケヌスもあれば、トラブルの原因になっおしたうケヌスもあるので、その仕組みをよく理解しおおくこずが倧切だ。

なお、「ク゚リのマヌゞ」には「巊倖郚」や「内郚」のほかにも、「右倖郚」、「完党倖郚」、「巊反」、「右反」ずいった蚈6皮類の結合方法が甚意されおいる。次回は、それぞれの結合方法に぀いお詳しく玹介しおいこう。