【エクセル/Salesforce】誕生日から星座を算出する方法
こんにちは。
婚活サービス「ヒトオシ」PM/Salesforce担当の清水晋太朗(@shintaro_smz)です。
今回は、星座を数式でExcel・Salesforceで計算する方法に関してご紹介させていただきます。
星座を算出したいと考えた経緯
婚活サービス「ヒトオシ」で、先日リリースしたWEBサービスのアイコンに「生年月日」に由来した絵柄を表示する機能があります。
そこで折角季節の絵柄をアイコンで表示できているならば、「星座」のアイコンも実装したいよねというのも話題に上がりました。
実際に会員さまからも、
「星座は話のとっかかりにしやすい」
「親近感が湧く」
「自分から聞くと、占いを気にしてるかと思われて聞きにくい🥲」
などのご意見がありました。
そこで開発チームで実際に話し合ったところ、Salesforceのデータベースに反映させるか、コードで書くかが話題になり、折角ならどっちでも対応できるように、データベースに入れるならどう計算するかなといったところで今回は調査しました。
最初、日本語で調べたところ、vlookup関数を利用しない数式の書き方に関する記事が1つもヒットしなかったので、星座の関数を日本語で書く第1人者としてnoteを記載しました。(便利だと思ってくれる人がいてくれることを望んでいます笑)
婚活サービス「ヒトオシ」のWEBサービス開発の裏話はこちらで詳しく書きました!
実際の数式
実際の数式はこちらです。ロジックとしてはIF関数で何月何日から何月何日までは"〇〇座"を表示しているものとなります。
生年月日で年が含まれていると、うまく計算できません。そこでYEAR関数を利用して、年を考慮しないものとして計算することで、簡単に星座を算出できます。
※もちろん、閏年にも対応しています。
IF(Birthday__c <= DATE(YEAR(Birthday__c),01, 19),"やぎ座" ,
IF(Birthday__c >= DATE(YEAR(Birthday__c),12, 22),"やぎ座" ,
IF(Birthday__c >= DATE(YEAR(Birthday__c),11, 23),"いて座" ,
IF(Birthday__c >= DATE(YEAR(Birthday__c),10, 24),"さそり座" ,
IF(Birthday__c >= DATE(YEAR(Birthday__c),09, 23),"てんびん座" ,
IF(Birthday__c >= DATE(YEAR(Birthday__c),08, 23),"おとめ座" ,
IF(Birthday__c >= DATE(YEAR(Birthday__c),07, 23),"しし座" ,
IF(Birthday__c >= DATE(YEAR(Birthday__c),06, 22),"かに座" ,
IF(Birthday__c >= DATE(YEAR(Birthday__c),05, 21),"ふたご座" ,
IF(Birthday__c >= DATE(YEAR(Birthday__c),04, 20),"おうし座" ,
IF(Birthday__c >= DATE(YEAR(Birthday__c),03, 21),"おひつじ座" ,
IF(Birthday__c >= DATE(YEAR(Birthday__c),02, 19),"うお座" ,
IF(Birthday__c >= DATE(YEAR(Birthday__c),01, 20),"みずがめ座" ,
NULL)))))))))))))
※ bitrhday__c = 生年月日の項目
※ Excelの場合は、セルを参照する
参照星座早見表:https://www.study-style.com/seiza/12seiza.html
ぜひ、Excel/Salesforceで星座の数式を書いてみたい!という方はこちらをご参照ください!
サービス紹介
婚活サービス「ヒトオシ」
清水晋太朗 Twitter