Vraag : Hoe specificeer ik dat een variabele een aantal dat aan één decimaal rond wordt gemaakt is?

Hello, heeft

I 12 variabelen, elk die de gegroeide vakantiedagen van een maand (voor elke maand) vertegenwoordigen.  Ik heb deze variabelen verklaard zonder hun type (zij zijn geen gehelen) te specificeren.  Ik zou de resulterende waarde van elke die variabele een aantal willen zijn aan één decimaal rond wordt gemaakt.  Hoe kan ik dit doen? />Please


Thank you.
" codeBody "
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
Option vergelijkt Gegevensbestand
'Dagen openbare intAccrual1 die in Januari van huidig jaar groeien
'Dagen openbare intAccrual2 die in Februari van huidig jaar groeien
'Dagen openbare intAccrual3 die in Mar van huidig jaar groeien
'Dagen openbare intAccrual4 die in April van huidig jaar groeien
'Dagen openbare intAccrual5 die in Mei van huidig jaar groeien
'Dagen openbare intAccrual6 die in Juni van huidig jaar groeien
'Dagen openbare intAccrual7 die in Juli van huidig jaar groeien
'Dagen openbare intAccrual8 die in Augustus van huidig jaar groeien
'Dagen openbare intAccrual9 die in Sept. van huidig jaar groeien
'Dagen openbare intAccrual0 die in Oct van huidig jaar groeien
'Dagen openbare intAccrual11 die in Nov. van huidig jaar groeien
'Dagen openbare intAccrual12 die in Dec van huidig jaar groeien

Const Form_Name = „mod_Accounting“


Openbare SubMonthlyAccrual ()
    'Bepaal het aantal vakantiedagen die groeien
    'elke maand tijdens het huidige jaar
    'Berekening op een dagelijkse basis wordt gedaan (d.w.z., vertegenwoordigt een tijdspanne een percent van het jaar dat, niet mth)
    
    'Open recordsets voor twee lijsten: tbl_AnnualVacation en tbl_PercentWork
    
    Schemerige rstAnnualVacation als ADODB.Recordset
    Schemerige rstPercentWork als ADODB.Recordset
    Schemerige sql als Koord
    Schemerige D, FirstDayOfThisYear, LastDayOfThisYear, FromDate als Datum
    Schemerige I
    
    FirstDayOfThisYear = DateSerial (Jaar (Datum), 1, 1)
    LastDayOfThisYear = DateSerial (Jaar (Datum), 12, 31)
    
    'Plaats variabelen voor mthly gegroeide dagen aan nul
    intAccrual1 = 0
    intAccrual2 = 0
    intAccrual3 = 0
    intAccrual4 = 0
    intAccrual5 = 0
    intAccrual6 = 0
    intAccrual7 = 0
    intAccrual8 = 0
    intAccrual9 = 0
    intAccrual0 = 0
    intAccrual11 = 0
    intAccrual12 = 0
    
    Vastgestelde rstAnnualVacation = Nieuwe ADODB.Recordset
    Reeks rstPercentWork = Nieuwe ADODB.Recordset
    
    'Open recordsets
    sql = „UITGEZOCHTE tbl_AnnualVacation.* VAN tbl_AnnualVacation; “
    
    rstAnnualVacation.Open sql, CurrentProject.Connection, _
        adOpenStatic, adLockOptimistic
        
    sql = „UITGEZOCHTE tbl_PercentWork.* VAN tbl_PercentWork; “
    
    rstPercentWork.Open sql, CurrentProject.Connection, _
        adOpenStatic, adLockOptimistic
        
    Voor D = FirstDayOfThisYear aan LastDayOfThisYear
    
        De Dagen van de 'jaarlijkse Vakantie
        'Vind de meest recente datum die minder dan de datum in beraad van dit jaar is
        FromDate = #1/1/1900#
        rstAnnualVacation.MoveFirst
        rstAnnualVacation.MoveLast
        Doe tot rstAnnualVacation.BOF
            Als D >= rstAnnualVacation.Fields („FromDate“) en rstAnnualVacation.Fields („FromDate“) > FromDate toen
                FromDate = rstAnnualVacation.Fields („FromDate“)
            Eind als
        rstAnnualVacation.MovePrevious
        Lijn
        'Plaats I = het aantal jaarlijkse vakantiedagen vanaf die datum
        rstAnnualVacation.MoveFirst
        rstAnnualVacation.Find „FromDate=“ & CStr (FromDate)
        i = („AnnualVacation“) 'Aantal rstAnnualVacation.Fields vakantiedagen vanaf bepaalde datum
        
        Het 'werk van percenten
        'Vind de meest recente datum die minder dan de datum in beraad van dit jaar is
        FromDate = #1/1/1900#
        rstPercentWork.MoveFirst
        rstPercentWork.MoveLast
        Doe tot rstPercentWork.BOF
            Als D >= rstPercentWork.Fields („FromDate“) en rstPercentWork.Fields („FromDate“) > FromDate toen
                FromDate = rstPercentWork.Fields („FromDate“)
            Eind als
        rstPercentWork.MovePrevious
        Lijn
        'Plaats I = het aantal jaarlijkse vakantiedagen vanaf die datum
        rstPercentWork.MoveFirst
        rstPercentWork.Find „FromDate=“ & CStr (FromDate)
        i = ((I * rstPercentWork.Fields („PercentWork“)) /100 groeide)/365 'dagelijkse vakantie
        'Wijs acccrued dagelijkse vakantie toe om maandvariabele te verbeteren
        Selecteer de Maand van het Geval (D)
            Geval 1 'Januari
                intAccrual1 = intAccrual1 + I
            Geval 2 'Februari
                intAccrual2 = intAccrual2 + I
            Geval 3 'Maart
                intAccrual3 = intAccrual3 + I
            Geval 4 'April
                intAccrual4 = intAccrual4 + I
            Geval 5 'mag
                intAccrual5 = intAccrual5 + I
            Geval 6 'Juni
                intAccrual6 = intAccrual6 + I
            Geval 7 'Juli
                intAccrual7 = intAccrual7 + I
            Geval 8 'Augustus
                intAccrual8 = intAccrual8 + I
            Geval 9 'September
                intAccrual9 = intAccrual9 + I
            Geval 10 'Oktober
                intAccrual10 = intAccrual10 + I
            Geval 11 'November
                intAccrual11 = intAccrual11 + I
            Geval 12 'December
                intAccrual12 = intAccrual12 + I
        Uitgezocht eind
    Daarna
Sub van het eind

Antwoord : Hoe specificeer ik dat een variabele een aantal dat aan één decimaal rond wordt gemaakt is?

Een paar manieren om dit afhankelijk van uw voorkeur te bereiken zijn

1. Het gebruiken van de ingebouwde Ronde functie is rond aan één decimaal als
x = Rond (12.55, 1) zou 'x 12.6 worden
De ronde bankiers die van het functiegebruik zo u kunnen wensen om een alternatief als hieronder te overwegen rond maken.

2.  Het gebruiken van de functie van int.
Int. (nummer x 10 + .5) /10
U zult vinden waarschijnlijk ook dat de functie van int. sneller loopt nochtans het zou blijken niet dat uw implementatie kritieke uitvoeringstijd is.
Andere oplossingen  
 
programming4us programming4us