星座判斷 需要用Excal 做的函數巨集

請編寫一函數starsign(d as date) 以輸入日期判定星座.

以VB 的Month()與Day()函數抓取月份與日期

有大大可以給我用Excal 做的函數巨集嗎

寫不出來啊

已更新項目:

例如 月 日 星座

輸入月日 "10" " 9" 天秤座 <<星座會自動跑出來

1 個解答

評分
  • 8 年前
    最佳解答

    <範例檔>:

    http://www.funp.net/544983

    2012-10-08 17:28:09 補充:

    EXCEL VBA.利用〔Function自訂函數〕查詢〔十二星座〕

                             <.准提部林.>

    --------------------------------- 

    ■程式碼:

     Function 星座(xMon%, xDay%) As String

     Dim ChkVal%, xStr, xVal, i%

     Application.Volatile

     If Not IsDate("2000/" & xMon & "/" & xDay) Then Exit Function

     xStr = Array("牡羊座", "金牛座", "雙子座", "巨蟹座", _

            "獅子座", "處女座", "天秤座", "天蠍座", _

            "射手座", "魔羯座", "水瓶座", "雙魚座")

     xVal = Array(420, 521, 621, 723, 823, 923, _

            1023, 1122, 1222, 1320, 1419, 1520)

     ChkVal = xMon * 100 + xDay

     If ChkVal < 321 Then ChkVal = ChkVal + 1200

     For i = 0 To 11

       If ChkVal <= xVal(i) Then 星座 = xStr(i): Exit For

     Next i

     End Function

      

    ■範例資料:A1:D13

    星座區間日期起算碼結束碼牡羊座03月21日~04月20日321420金牛座04月21日~05月21日421521雙子座05月22日~06月21日522621巨蟹座06月22日~07月23日622723獅子座07月24日~08月23日724823處女座08月24日~09月23日824923天秤座09月24日~10月23日9241023天蠍座10月24日~11月22日10241122射手座11月23日~12月22日11231222魔羯座12月23日~01月20日12231320水瓶座01月21日~02月19日13211419雙魚座02月20日~03月20日14201520

    ■查詢介面:F1:J3

    星座查詢月份日期檢查碼一般公式自訂函數928928天秤座天秤座

    ■公式:

     自訂函數:J3=星座(F3,G3)

     

     一般公式:I3=IF(H3="ERROR","",LOOKUP(1,0/(H3>=C2:C13),A2:A13))

          H2=F3*100+G3+(F3*100+G3<321)*1200

    ---------------------------------

    <範例檔>:

    http://www.funp.net/544983

    ---------------------------------

    2012-10-08 21:17:35 補充:

    I3公式修正:=IF(H3="ERROR","",LOOKUP(H3,C2:C13,A2:A13))

    另程式碼也可修改為:

    xVal = Array(321, 421, 522, 622, 724, 824, 924, 1024, 1123, 1223, 1321, 1420)

    最後三行 :

    For i   ~~  Next

    改為:

    星座 = Application.Lookup(ChkVal, xVal, xStr)

還有問題?馬上發問,尋求解答。