Frage : Wie spezifiziere ich, dass eine Variable eine Zahl ist, die zu einer Dezimalstelle gerundet wird?

Hallo, haben

I 12 Variablen, jede, welche die anfallenden Ferientage eines Monats darstellt (einer für jeden Monat).  Ich habe diese Variablen erklärt, ohne ihre Art (sie sind nicht ganze Zahlen) zu spezifizieren.  Ich möchte, dass der resultierende Wert von jedem variabel eine Zahl gerundet zu einer Dezimalstelle ist.  Wie kann ich dies tun?

Please beziehen sich das auf angebrachte code.

Thank you.
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:
6:
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 vergleichen Datenbank
Tage der Öffentlichkeits-intAccrual1 ', die im Januar vom laufenden Jahr anfallen
Tage der Öffentlichkeits-intAccrual2 ', die im Februar vom laufenden Jahr anfallen
Tage der Öffentlichkeits-intAccrual3 ', die im März vom laufenden Jahr anfallen
Tage der Öffentlichkeits-intAccrual4 ', die im April vom laufenden Jahr anfallen
Tage der Öffentlichkeits-intAccrual5 ', die im Mai vom laufenden Jahr anfallen
Tage der Öffentlichkeits-intAccrual6 ', die im Juni vom laufenden Jahr anfallen
Tage der Öffentlichkeits-intAccrual7 ', die im Juli vom laufenden Jahr anfallen
Tage der Öffentlichkeits-intAccrual8 ', die im August vom laufenden Jahr anfallen
Tage der Öffentlichkeits-intAccrual9 ', die im Sept. des laufenden Jahres anfallen
Tage der Öffentlichkeits-intAccrual0 ', die im Oktober vom laufenden Jahr anfallen
Tage der Öffentlichkeits-intAccrual11 ', die im November vom laufenden Jahr anfallen
Tage der Öffentlichkeits-intAccrual12 ', die im Dezember vom laufenden Jahr anfallen

Const Form_Name = „mod_Accounting“


Allgemeines VorMonthlyAccrual ()
    'Die Zahl Ferientagen feststellen, die anfallen
    'jeden Monat während des laufenden Jahres
    'Berechnung erfolgt auf einer täglichen Basis (d.h., stellt ein Zeitraum ein Prozent des Jahres, nicht mth) dar
    
    'Geöffnete recordsets für zwei Tabellen: tbl_AnnualVacation und tbl_PercentWork
    
    Schwaches rstAnnualVacation als ADODB.Recordset
    Schwaches rstPercentWork als ADODB.Recordset
    Schwacher sql als Schnur
    Schwaches d, FirstDayOfThisYear, LastDayOfThisYear, FromDate als Datum
    I verdunkeln
    
    FirstDayOfThisYear = DateSerial (Jahr (Datum), 1, 1)
    LastDayOfThisYear = DateSerial (Jahr (Datum), 12, 31)
    
    'Variablen für mthly anfallende Tage auf null stellen
    intAccrual1 = 0
    intAccrual2 = 0
    intAccrual3 = 0
    intAccrual4 = 0
    intAccrual5 = 0
    intAccrual6 = 0
    intAccrual7 = 0
    intAccrual8 = 0
    intAccrual9 = 0
    intAccrual0 = 0
    intAccrual11 = 0
    intAccrual12 = 0
    
    rstAnnualVacation einstellen = neues ADODB.Recordset
    rstPercentWork einstellen = neues ADODB.Recordset
    
    'Geöffnete recordsets
    sql = „AUSERWÄHLTES tbl_AnnualVacation.* vom tbl_AnnualVacation; “
    
    rstAnnualVacation.Open sql, CurrentProject.Connection, _
        adOpenStatic, adLockOptimistic
        
    sql = „AUSERWÄHLTES tbl_PercentWork.* vom tbl_PercentWork; “
    
    rstPercentWork.Open sql, CurrentProject.Connection, _
        adOpenStatic, adLockOptimistic
        
    Für d = FirstDayOfThisYear zu LastDayOfThisYear
    
        'Jahresurlaub-Tage
        'Das neueste Datum, das kleiner, als ist das Datum dieses Jahres in Erwägung finden
        FromDate = #1/1/1900#
        rstAnnualVacation.MoveFirst
        rstAnnualVacation.MoveLast
        Bis rstAnnualVacation.BOF tun
            Wenn d >= rstAnnualVacation.Fields („FromDate“) und rstAnnualVacation.Fields („FromDate“) > FromDate dann
                FromDate = rstAnnualVacation.Fields („FromDate“)
            Beenden wenn
        rstAnnualVacation.MovePrevious
        Schleife
        'I = die Zahl Jahresurlaubtagen ab diesem Datum einstellen
        rstAnnualVacation.MoveFirst
        rstAnnualVacation.Find „FromDate=“ u. CStr (FromDate)
        I = rstAnnualVacation.Fields („AnnualVacation“) 'Zahl der Ferientage ab gegebenem Datum
        
        'Prozentarbeit
        'Das neueste Datum, das kleiner, als ist das Datum dieses Jahres in Erwägung finden
        FromDate = #1/1/1900#
        rstPercentWork.MoveFirst
        rstPercentWork.MoveLast
        Bis rstPercentWork.BOF tun
            Wenn d >= rstPercentWork.Fields („FromDate“) und rstPercentWork.Fields („FromDate“) > FromDate dann
                FromDate = rstPercentWork.Fields („FromDate“)
            Beenden wenn
        rstPercentWork.MovePrevious
        Schleife
        'I = die Zahl Jahresurlaubtagen ab diesem Datum einstellen
        rstPercentWork.MoveFirst
        rstPercentWork.Find „FromDate=“ u. CStr (FromDate)
        I = ((i * rstPercentWork.Fields („PercentWork“)) /100 fielen)/365 'tägliche Ferien an
        'Acccrued tägliche Ferien zuteilen, um Monatsvariable zu beheben
        Fall-Monat vorwählen (d)
            1 'Januar Rechtssache
                intAccrual1 = intAccrual1 + i
            Rechtssache 2 'Februar
                intAccrual2 = intAccrual2 + i
            Rechtssache 3 'März
                intAccrual3 = intAccrual3 + i
            Rechtssache 4 'April
                intAccrual4 = intAccrual4 + i
            Rechtssache 5 'mag
                intAccrual5 = intAccrual5 + i
            Rechtssache 6 'Juni
                intAccrual6 = intAccrual6 + i
            Rechtssache 7 'Juli
                intAccrual7 = intAccrual7 + i
            Rechtssache 8 'August
                intAccrual8 = intAccrual8 + i
            Rechtssache 9 'September
                intAccrual9 = intAccrual9 + i
            Rechtssache 10 'Oktober
                intAccrual10 = intAccrual10 + i
            Rechtssache 11 'November
                intAccrual11 = intAccrual11 + i
            Rechtssache 12 'Dezember
                intAccrual12 = intAccrual12 + i
        Ende auserwählt
    Zunächst
Enden-Unterseeboot

Antwort : Wie spezifiziere ich, dass eine Variable eine Zahl ist, die zu einer Dezimalstelle gerundet wird?

Ein paar Weisen, dieses abhängig von Ihrer Präferenz zu erzielen sind

1. Using die eingebaute runde Funktion ist herum zu einer Dezimalstelle wie
x = rund (12.55, 1) 'x werden 12.6
Die runden Funktionsgebrauchbanker, die so Sie runden, können möchten eine Alternative wie unten betrachten.

2.  Using die INT-Funktion.
INT (Nr. x 10 + .5) /10
Sie finden vermutlich auch, dass die INT-Funktionsdurchläufe schneller jedoch es nicht scheinen, dass Ihre Implementierung die kritische Ausführungszeit ist.
Weitere Lösungen  
 
programming4us programming4us