0

私は、 05:00、-05:00 のような値を取得する必要があります。入力に数値 5、-5 がある場合..10、-12 のような入力値の場合、先行ゼロを追加する必要はありません..いくつか作成できます数字の桁数をチェックし、必要に応じて「0」文字を追加する関数ですが、おそらく誰にでも最高の決定がありますか?

4

4 に答える 4

2

これに最も役立つのは、VBScript の FormatNumber 関数です。W3 には良い例とテスト ツールがあります: http://www.w3schools.com/vbscript/func_formatnumber.asp

0 を追加する特定のケースを処理するために、この関数をラップする必要がある可能性が最も高いでしょう。

IF x > 0 & x < 10 THEN "0" + x
ELSEIF x > -10 & x < 0 THEN "-0" + Abs(x)

またはその性質の何か。繰り返しますが、整数は常に 05 または -05 ではなく 5 または -5 を反映するため、これは文字列の書式設定である必要があります。

それが役立つことを願っています

于 2012-05-29T12:18:31.140 に答える
1

試す

Function FormatHour (input)
    Dim sign
    If (input < 0) Then
        sign = "-"
    End If

    FormatHour = sign & FormatDateTime(TimeSerial(Abs(input), 0, 0), vbShortTime)
End Function
于 2012-05-29T12:36:13.697 に答える
0

アレクセイ、次回はあなたが持っているものを公開してください、今私たちはあなたが本当に欲しいものを推測しなければならないので、ここに私の推測があります

a = array(0, 5, -5, 15, -55) 
for each e in a 
  wscript.echo mid(" -",instr(e,"-")+1,1)&right("0"&abs(e),2)&":00" 
next    

 00:00
 05:00
-05:00
 15:00
-55:00

また

for i = 0 to uBound(a) 
  a(i) = mid(" -",instr(a(i),"-")+1,1)&right("0"&abs(a(i)),2)&":00" 
next 
wscript.echo join(a,",")  
'00:00, 05:00,-05:00, 15:00,-55:00
于 2012-05-29T17:28:42.310 に答える
0

Microsoft のこの lpad と rpad の例はどうですか?

http://support.microsoft.com/kb/96458

于 2012-05-29T13:37:20.257 に答える