|
½ñÌìÕûÀíÎļþʱ·¢ÏÖÁËÒÔǰдµÄ»õ±Ò½ð¶îÖÐÎÄת»»£¨×ª»»Ò»ÒÚÒÚÔªÒÔÏÂÊýÄ¿µÄ»õ±Ò£©µÄ´úÂ룬Ìû³öÀ´Óë´ó¼Ò¹²Ïí£º Function daxie(money As String) As String Dim x As String, y As String Const zimu = ".sbqwsbqysbqwsbq" ¶¨ÒåλÖôúÂë Const letter = "0123456789sbqwy.zjf" ¶¨Ò庺×ÖËõд Const upcase = "ÁãÒ¼·¡ÈþËÁÎé½Æâ°Æ¾Áʰ°ÛǪÈfƒ|Ô²Õû½Ç·Ö" ¶¨Òå´óдºº×Ö Dim temp As String temp = money If InStr(temp, ".") > 0 Then temp = Left(temp, InStr(temp, ".") - 1) If Len(temp) > 16 Then MsgBox "ÊýĿ̫´ó£¬ÎÞ·¨»»Ë㣡ÇëÊäÈëÒ»ÒÚÒÚÒÔϵÄÊý×Ö", 64, "´íÎóÌáʾ": Exit Function Ö»ÄÜת»»Ò»ÒÚÒÚÔªÒÔÏÂÊýÄ¿µÄ»õ±Ò£¡ x = Format(money, "0.00") ¸ñʽ»¯»õ±Ò y = "" For i = 1 To Len(x) - 3 y = y & Mid(x, i, 1) & Mid(zimu, Len(x) - 2 - i, 1) Next If Right(x, 3) = ".00" Then y = y & "z" ***ÔªÕû Else y = y & Left(Right(x, 2), 1) & "j" & Right(x, 1) & "f" *Ôª*½Ç*·Ö End If y = Replace(y, "0q", "0") ±ÜÃâÁãǧ(È磺40200ËÁÈfÁãǧÁã·¡°Û) y = Replace(y, "0b", "0") ±ÜÃâÁã°Ù(È磺41000ËÁÈfҼǧÁã°Û) y = Replace(y, "0s", "0") ±ÜÃâÁãÊ®(È磺204·¡°ÛÁãʰÁãËÁ) Do While y <> Replace(y, "00", "0") y = Replace(y, "00", "0") ±ÜÃâË«Áã(È磺1004ҼǪÁãÁãËÁ) Loop y = Replace(y, "0y", "y") ±ÜÃâÁãƒ|(È磺210ƒ| ·¡°ÛҼʮÁãƒ|) y = Replace(y, "0w", "w") ±ÜÃâÁãÈf(È磺210Èf ·¡°ÛҼʮÁãÈf) y = IIf(Len(x) = 5 And Left(y, 1) = "1", Right(y, Len(y) - 1), y) ±ÜÃâҼʮ(È磺14ҼʰËÁ£»10Ҽʰ) y = IIf(Len(x) = 4, Replace(y, "0.", ""), Replace(y, "0.", ".")) ±ÜÃâÁãÔª(È磺20.00·¡Ê°ÁãÔ²£»0.12ÁãÔ²Ò¼½Ç·¡·Ö) For i = 1 To 19 y = Replace(y, Mid(letter, i, 1), Mid(upcase, i, 1)) ´óдºº×Ö Next daxie = y End Function Private Sub Command3_Click() Debug.Print daxie("6218212212309322.3238") return: ½Ǫ·¡°ÛҼʰ°ÆÈf·¡ÇªÒ¼°Û·¡Ê°·¡ƒ|ҼǪ·¡°ÛÈþʰÈf¾ÁǪÈþ°Û·¡Ê°·¡Ô²Èþ½Ç·¡·Ö End Sub
|