View difference between Paste ID: 0Z3xBweM and 8DyYZAS0
SHOW: | | - or go back to the newest paste.
1
Sub Obliczanie_etatów()
2
Dim a, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, b As Byte
3
Dim c, ed11s As Variant
4-
Dim d1, d2, d3, d4, d5, d6, d7, d8, d9, d10, j1, pj1, qj1, zmienna1, zmienna2, zmienna3, zmienna4  As Single
4+
Dim d1, d2, d3, d4, d5, d6, d7, d8, d9, d10, j1, pj1, qj1, zmienna1, zmienna2, zmienna3, zmienna4, korekta  As Single
5
6
korekta = 0.001
7
b = InputBox("Podaj wiek drzewostanu")
8
a = InputBox("Podaj wiek rębności")
9
If a < 81 Then
10
b1 = b / 10
11
a1 = (a / 10) - 1
12
a2 = (a / 10) - 2
13
ActiveSheet.Range("b1").Select
14
ActiveCell.Offset([a1], [0]).Select
15
                                            
16
17
18
d1 = ActiveCell.Value
19
ActiveCell.Offset([0], [1]).Select
20
d2 = ActiveCell.Value
21
22
ActiveCell.Offset([1], [-1]).Select
23
d3 = ActiveCell.Value
24
ActiveCell.Offset([0], [1]).Select
25
d4 = ActiveCell.Value
26
27
ActiveCell.Offset([1], [-1]).Select
28
d5 = ActiveCell.Value
29
ActiveCell.Offset([0], [1]).Select
30
d6 = ActiveCell.Value
31
32
ActiveCell.Offset([1], [-1]).Select
33
d7 = ActiveCell.Value
34
ActiveCell.Offset([0], [1]).Select
35
d8 = ActiveCell.Value
36
37
ActiveCell.Offset([1], [-1]).Select
38
d9 = ActiveCell.Value
39
ActiveCell.Offset([0], [1]).Select
40
d10 = ActiveCell.Value
41
42
ed11s = d1 + d3 + d5 + d7 + d9
43
ed11v = d2 + d4 + d6 + d8 + d10
44
45
ActiveSheet.Range("b1").Select
46
ActiveCell.Offset([a2], [0]).Select
47
d1 = ActiveCell.Value
48
ActiveCell.Offset([0], [1]).Select
49
d2 = ActiveCell.Value
50
51
ActiveCell.Offset([1], [-1]).Select
52
d3 = ActiveCell.Value
53
ActiveCell.Offset([0], [1]).Select
54
d4 = ActiveCell.Value
55
56
ActiveCell.Offset([1], [-1]).Select
57
d5 = ActiveCell.Value
58
ActiveCell.Offset([0], [1]).Select
59
d6 = ActiveCell.Value
60
61
ActiveCell.Offset([1], [-1]).Select
62
d7 = ActiveCell.Value
63
ActiveCell.Offset([0], [1]).Select
64
d8 = ActiveCell.Value
65
66
ActiveCell.Offset([1], [-1]).Select
67
d9 = ActiveCell.Value
68
ActiveCell.Offset([0], [1]).Select
69
d10 = ActiveCell.Value
70
71
ed21s = (d1 + d3 + d5 + d7 + d9) / 2
72
ed21v = (d2 + d4 + d6 + d8 + d10) / 2
73
74-
    ActiveSheet.Range("a1").Select
74+
75
76
77
    
78
    
79
    
80
    
81
    
82
    
83
    
84-
        If zmienna1 < 1.1 Then
84+
 ActiveSheet.Range("a1").Select
85
    ActiveCell.Offset([b1], [0]).Select
86
    j1 = ActiveCell.Value
87
    ActiveCell.Offset([0], [1]).Select
88-
            Do While zmienna1 < 1.1
88+
89-
            pj1 -0.001
89+
90-
            zmienna1 = j1 * pj1 * qj1
90+
91
    
92
    zmienna1 = j1 * pj1 * qj1
93
    If zmienna1 > 0.9 Then
94
            If zmienna1 < 1.1 Then
95
             
96
             ez = pj1 * qj1
97
             Else
98
             Do Until zmienna1 < 1.1
99
             pj1 -korekta
100
             zmienna1 = j1 * pj1 * qj1
101
              Loop
102
              ez = pj1 * qj1
103
              End If
104
            
105
            
106
            
107
    Else
108
     ActiveSheet.Range("a1").Select
109
    ActiveCell.Offset([b1], [0]).Select
110
    ActiveCell.Offset([-1], [0]).Select
111-
             Do While zmienna2 < 1.1
111+
112-
            pj1 -0.001
112+
113
    pj1 = ActiveCell.Value
114
  
115
    qj1 = pj1 / 1
116
    zmienna2 = zmienna1 + (j1 * pj1 * qj1)
117
        If zmienna2 > 0.9 Then
118
            If zmienna2 < 1.1 Then
119
             ez = pj1 * qj1
120
            Else
121
             Do Until zmienna2 < 1.1
122
            pj1 -korekta
123
            zmienna2 = zmienna1 + (j1 * pj1 * qj1)
124
            Loop
125
            ez = pj1 * qj1
126
            End If
127
    
128
    
129
    Else
130
    
131
     ActiveSheet.Range("a1").Select
132
    ActiveCell.Offset([b1], [0]).Select
133
    ActiveCell.Offset([-2], [0]).Select
134-
             Do While zmienna2 < 1.1
134+
135-
            pj1 -0.001
135+
136
    pj1 = ActiveCell.Value
137
  
138
    qj1 = pj1 / 1
139
    zmienna3 = zmienna2 + (j1 * pj1 * qj1)
140
        If zmienna3 > 0.9 Then
141
            If zmienna3 < 1.1 Then
142
             ez = pj1 * qj1
143
            Else
144
             Do Until zmienna3 < 1.1
145
            pj1 -korekta
146
            zmienna3 = zmienna2 + (j1 * pj1 * qj1)
147
            Loop
148
            ez = pj1 * qj1
149
            End If
150
    
151
   Else
152
   
153
     ActiveSheet.Range("a1").Select
154
    ActiveCell.Offset([b1], [0]).Select
155
    ActiveCell.Offset([-3], [0]).Select
156
    j1 = ActiveCell.Value
157
    ActiveCell.Offset([0], [1]).Select
158
    pj1 = ActiveCell.Value
159
  
160
    qj1 = pj1 / 1
161
    zmienna4 = zmienna3 + (j1 * pj1 * qj1)
162
        If zmienna4 > 0.9 Then
163
            If zmienna4 < 1.1 Then
164
             ez = pj1 * qj1
165
            Else
166
             Do Until zmienna4 < 1.1
167
            pj1 -korekta
168
            zmienna4 = zmienna3 + (j1 * pj1 * qj1)
169
            Loop
170
            ez = pj1 * qj1
171
            End If
172
  End If
173
  
174
    
175
176
177
MsgBox (ed11s & "ha/ha/10l)  " & ed11v & "m3/ha/10l  " & ed21s & "  " & ed21v & ez)
178
179
180
181
182
183
184
End If
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
End Sub