Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Sub Obliczanie_etatów()
- Dim a, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, b As Byte
- Dim c, ed11s, ed11v, ed21s, ed21v As Variant
- Dim d1, d2, d3, d4, d5, d6, d7, d8, d9, d10, d11, d12, d13, d14, d15, d16, d17, d18, d19, d20, j, pjc, pjw, qj, ez, ez1, ez2, ez3, zmienna1, zmienna2, zmienna3, zmienna4, korekta As Single
- korekta = 0.001
- b = InputBox("Podaj wiek drzewostanu")
- a = InputBox("Podaj wiek rębności")
- If a < 81 Then
- b1 = (b / 10) - 1
- a1 = (a / 10) - 1
- a2 = (a / 10) - 2
- ActiveSheet.Range("b1").Select
- ActiveCell.Offset([a1], [0]).Select
- d1 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d2 = ActiveCell.Value * d1
- ActiveCell.Offset([1], [-1]).Select
- d3 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d4 = ActiveCell.Value * d3
- ActiveCell.Offset([1], [-1]).Select
- d5 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d6 = ActiveCell.Value * d5
- ActiveCell.Offset([1], [-1]).Select
- d7 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d8 = ActiveCell.Value * d7
- ActiveCell.Offset([1], [-1]).Select
- d9 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d10 = ActiveCell.Value * d9
- ed11s = d1 + d3 + d5 + d7 + d9
- ed11v = d2 + d4 + d6 + d8 + d10
- ActiveSheet.Range("b1").Select
- ActiveCell.Offset([a2], [0]).Select
- d1 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d2 = ActiveCell.Value * d1
- ActiveCell.Offset([1], [-1]).Select
- d3 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d4 = ActiveCell.Value * d3
- ActiveCell.Offset([1], [-1]).Select
- d5 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d6 = ActiveCell.Value * d5
- ActiveCell.Offset([1], [-1]).Select
- d7 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d8 = ActiveCell.Value * d7
- ActiveCell.Offset([1], [-1]).Select
- d9 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d10 = ActiveCell.Value * d9
- ed21s = (d1 + d3 + d5 + d7 + d9) / 2
- ed21v = (d2 + d4 + d6 + d8 + d10) / 2
- Else
- b1 = (b / 10) - 1
- a1 = (a / 10) - 2
- a2 = (a / 10) - 4
- ActiveSheet.Range("b1").Select
- ActiveCell.Offset([a1], [0]).Select
- d1 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d2 = ActiveCell.Value * d1
- ActiveCell.Offset([1], [-1]).Select
- d3 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d4 = ActiveCell.Value * d3
- ActiveCell.Offset([1], [-1]).Select
- d5 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d6 = ActiveCell.Value * d5
- ActiveCell.Offset([1], [-1]).Select
- d7 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d8 = ActiveCell.Value * d7
- ActiveCell.Offset([1], [-1]).Select
- d9 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d10 = ActiveCell.Value * d9
- d11 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d12 = ActiveCell.Value * d11
- ActiveCell.Offset([1], [-1]).Select
- d13 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d14 = ActiveCell.Value * d13
- ActiveCell.Offset([1], [-1]).Select
- d15 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d16 = ActiveCell.Value * d15
- ActiveCell.Offset([1], [-1]).Select
- d17 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d18 = ActiveCell.Value * d17
- ActiveCell.Offset([1], [-1]).Select
- d19 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d20 = ActiveCell.Value * d19
- ed11s = (d1 + d3 + d5 + d7 + d9 + d11 + d13 + d15 + d17 + d19) / 2
- ed11v = (d2 + d4 + d6 + d8 + d10 + d12 + d14 + d16 + d18 + d20) / 2
- ActiveSheet.Range("b1").Select
- ActiveCell.Offset([a2], [0]).Select
- d1 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d2 = ActiveCell.Value * d1
- ActiveCell.Offset([1], [-1]).Select
- d3 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d4 = ActiveCell.Value * d3
- ActiveCell.Offset([1], [-1]).Select
- d5 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d6 = ActiveCell.Value * d5
- ActiveCell.Offset([1], [-1]).Select
- d7 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d8 = ActiveCell.Value * d7
- ActiveCell.Offset([1], [-1]).Select
- d9 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d10 = ActiveCell.Value * d9
- d11 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d12 = ActiveCell.Value * d11
- ActiveCell.Offset([1], [-1]).Select
- d13 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d14 = ActiveCell.Value * d13
- ActiveCell.Offset([1], [-1]).Select
- d15 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d16 = ActiveCell.Value * d15
- ActiveCell.Offset([1], [-1]).Select
- d17 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d18 = ActiveCell.Value * d17
- ActiveCell.Offset([1], [-1]).Select
- d19 = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- d20 = ActiveCell.Value * d19
- ed21s = (d1 + d3 + d5 + d7 + d9 + d11 + d13 + d15 + d17 + d19) / 4
- ed21v = (d2 + d4 + d6 + d8 + d10 + d12 + d14 + d16 + d18 + d20) / 4
- End If
- ActiveSheet.Range("a1").Select
- ActiveCell.Offset([b1], [0]).Select
- j = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- pjw = ActiveCell.Value
- pjc = ActiveCell.Value
- qj = pjw / pjc
- zmienna1 = j * pj * qj
- ez1 = pjw * qj
- If zmienna1 > 0.9 Then
- If zmienna1 < 1.1 Then
- ez = pj * qj
- Else
- Do Until zmienna1 < 1.01
- qj = (pjw - korekta) / pjc
- zmienna1 = j * pj * qj
- Loop
- ez = pjw * qj
- End If
- End If
- ActiveSheet.Range("a1").Select
- ActiveCell.Offset([b1], [0]).Select
- ActiveCell.Offset([-1], [0]).Select
- j = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- pjw = ActiveCell.Value
- pjc = ActiveCell.Value
- qj = pjw / pjc
- zmienna1 = zmienna1 + (j * pj * qj)
- ez2 = pjw * qj
- If zmienna1 > 0.9 Then
- ElseIf zmienna1 < 1.1 Then
- ez = ez1 + (pjw * qj)
- Else
- Do Until zmienna1 < 1.01
- qj = (pjw - korekta) / pjc
- zmienna1 = zmienna1 + (j * pjc * qj)
- Loop
- ez = ez1 + (pjw * qj)
- End If
- ActiveSheet.Range("a1").Select
- ActiveCell.Offset([b1], [0]).Select
- ActiveCell.Offset([-2], [0]).Select
- j = ActiveCell.Value
- ActiveCell.Offset([0], [1]).Select
- pjw = ActiveCell.Value
- pjc = ActiveCell.Value
- qj = pjw / pjc
- zmienna1 = zmienna1 + (j * pj * qj)
- ez3 = pjw * qj
- If zmienna1 > 0.9 Then
- ElseIf zmienna1 < 1.01 Then
- ez = ez1 + ez2 + (pjw * qj)
- Else
- Do Until zmienna1 < 1.1
- qj = (pjw - korekta) / pjc
- zmienna1 = zmienna1 + (j * pjc * qj)
- Loop
- ez = ez1 + ez2 + (pjw * qj)
- End If
- MsgBox (ed11s & "ha/ha/10l) " & ed11v & "m3/ha/10l " & ed21s & "ha/ha/10l " & ed21v & "m3/ha/10l")
- MsgBox (zmienna1)
- MsgBox (ez)
- End Sub
Add Comment
Please, Sign In to add comment