GA4の連携とキャンペーンの振り分けをします。
「参照元」の情報から以下の「チャネル」に振り分ける作業をします。
これが絶妙に面倒くさい。
参照元メディアでaffiliate/a8もあればaffiliate/afi-bもあります。これらをまとめて「アフィリエイト」として区分する必要があります。
Google広告なんかは絶望的に面倒くさいんですよ。
などを全てGoogle広告にまとめなければならないのです。
これに対応した方法を記していきます。
参照元メディアを「IF関数、REGEXMATCH関数、JOIN関数」でチャネルに分類する
この時に使ったのが、「IF関数とREGEXMATCH関数とJOIN関数」です。
この関数を使って以下のようなクレンジング作業をしました。
=if(or(REGEXMATCH(B4,JOIN("|",'アフィリエイトのクレンジング'!D$3:D$13)),regexmatch(D4,'アフィリエイトのクレンジング'!$E$14)),"アフィリエイト",if(regexmatch(B4,join("|",'Google広告のクレンジング'!$B$1:$B$11)),"Google広告",if(regexmatch(B4,join("|",'Meta広告のクレンジング'!$B$2:$B$7)),"Meta広告",if(regexmatch(B4,join("|",'Yahoo広告のクレンジング'!B$2:B$3)),"Yahoo広告",if(regexmatch(B4,join("|",'organicのクレンジング'!$B$2:$B$7)),"オーガニック","")
REGEXMATCH関数を複数条件で指定するには、
「|」で文字列を区切る必要があります。
REGEXMATCH(B5,JOIN("|",C1:C10))
↑この関数を使うと、C1〜C10の文字列のどれかがB5に含まれているとき「TRUE」を返すし、含まれていない時に「FALSE」を返すという関数になります。
参考記事
↓複数の文字列がリスト内の単語を含むかを判定する方法↓
参考:関数を下まで適用する方法
if関数の入れ子しまくっているので、何回にも分けて関数を書きました。
その都度4000行ほどのセルを下まで引っ張っていくのめちゃくちゃ大変でした。
ですので、列の下の方まで一気に反映させる方法を学びました。
これめっちゃ便利