Module BestaandeWaardes
    '******************************************************************************
    'E waardes weerstanden uitzoeken

    'Naar boven afronden
    Public Function eWeerstandE12(ByVal waarde) As Single
        'Waarde E12 weerstand uitzoeken
        '8.2, 10, 12, 15, 18, 22, 27, 33, 39, 47, 56, 68, 82, 100

        'Array voor E12 weerstanden
        Dim weerstandsarrayE12(13) As Integer
        weerstandsarrayE12(0) = (82 / 10)
        weerstandsarrayE12(1) = 10
        weerstandsarrayE12(2) = 12
        weerstandsarrayE12(3) = 15
        weerstandsarrayE12(4) = 18
        weerstandsarrayE12(5) = 22
        weerstandsarrayE12(6) = 27
        weerstandsarrayE12(7) = 33
        weerstandsarrayE12(8) = 39
        weerstandsarrayE12(9) = 47
        weerstandsarrayE12(10) = 56
        weerstandsarrayE12(11) = 68
        weerstandsarrayE12(12) = 82
        weerstandsarrayE12(13) = 100

        Select Case waarde
            Case 0 To 82                                '8.2
                eWeerstandE12 = weerstandsarrayE12(0)
            Case 82 To 100                              '10
                eWeerstandE12 = weerstandsarrayE12(1)
            Case 100 To 120                             '12
                eWeerstandE12 = weerstandsarrayE12(2)
            Case 120 To 150                             '15
                eWeerstandE12 = weerstandsarrayE12(3)
            Case 150 To 180                             '18
                eWeerstandE12 = weerstandsarrayE12(4)
            Case 180 To 220                             '22
                eWeerstandE12 = weerstandsarrayE12(5)
            Case 220 To 270                             '27
                eWeerstandE12 = weerstandsarrayE12(6)
            Case 270 To 330                             '33
                eWeerstandE12 = weerstandsarrayE12(7)
            Case 330 To 390                             '39
                eWeerstandE12 = weerstandsarrayE12(8)
            Case 390 To 470                             '47
                eWeerstandE12 = weerstandsarrayE12(9)
            Case 470 To 560                             '56
                eWeerstandE12 = weerstandsarrayE12(10)
            Case 560 To 680                             '68
                eWeerstandE12 = weerstandsarrayE12(11)
            Case 680 To 820                             '82
                eWeerstandE12 = weerstandsarrayE12(12)
            Case 820 To 1000                            '100
                eWeerstandE12 = weerstandsarrayE12(13)
        End Select

    End Function
    Public Function eWeerstandE24(ByVal waarde) As Single
        'Waarde E24 weerstand uitzoeken
        '9.1, 10, 11, 12, 13, 15, 16, 18, 20, 22, 24, 27, 30, 33, 36, 39, 43, 47, 51, 56, 62, 68, 75, 82, 91, 100

        'Array voor E24 weerstanden
        Dim weerstandsarrayE24(25) As Integer
        weerstandsarrayE24(0) = (91 / 10)
        weerstandsarrayE24(1) = 10
        weerstandsarrayE24(2) = 11
        weerstandsarrayE24(3) = 12
        weerstandsarrayE24(4) = 13
        weerstandsarrayE24(5) = 15
        weerstandsarrayE24(6) = 16
        weerstandsarrayE24(7) = 18
        weerstandsarrayE24(8) = 20
        weerstandsarrayE24(9) = 22
        weerstandsarrayE24(10) = 24
        weerstandsarrayE24(11) = 27
        weerstandsarrayE24(12) = 30
        weerstandsarrayE24(13) = 33
        weerstandsarrayE24(14) = 36
        weerstandsarrayE24(15) = 39
        weerstandsarrayE24(16) = 43
        weerstandsarrayE24(17) = 47
        weerstandsarrayE24(18) = 51
        weerstandsarrayE24(19) = 56
        weerstandsarrayE24(20) = 62
        weerstandsarrayE24(21) = 68
        weerstandsarrayE24(22) = 75
        weerstandsarrayE24(23) = 82
        weerstandsarrayE24(24) = 91
        weerstandsarrayE24(25) = 100


        Select Case waarde
            Case 0 To 91                                '9.1
                eWeerstandE24 = weerstandsarrayE24(0)
            Case 91 To 100                              '10
                eWeerstandE24 = weerstandsarrayE24(1)
            Case 100 To 110                             '11
                eWeerstandE24 = weerstandsarrayE24(2)
            Case 110 To 120                             '12
                eWeerstandE24 = weerstandsarrayE24(3)
            Case 120 To 130                             '13
                eWeerstandE24 = weerstandsarrayE24(4)
            Case 130 To 150                             '15
                eWeerstandE24 = weerstandsarrayE24(5)
            Case 150 To 160                             '16
                eWeerstandE24 = weerstandsarrayE24(6)
            Case 160 To 180                             '18
                eWeerstandE24 = weerstandsarrayE24(7)
            Case 180 To 200                             '20
                eWeerstandE24 = weerstandsarrayE24(8)
            Case 180 To 220                             '22
                eWeerstandE24 = weerstandsarrayE24(9)
            Case 220 To 240                             '24
                eWeerstandE24 = weerstandsarrayE24(10)
            Case 240 To 270                             '27
                eWeerstandE24 = weerstandsarrayE24(11)
            Case 270 To 300                             '30
                eWeerstandE24 = weerstandsarrayE24(12)
            Case 300 To 330                             '33
                eWeerstandE24 = weerstandsarrayE24(13)
            Case 330 To 360                             '36
                eWeerstandE24 = weerstandsarrayE24(14)
            Case 360 To 390                             '39
                eWeerstandE24 = weerstandsarrayE24(15)
            Case 390 To 430                             '43
                eWeerstandE24 = weerstandsarrayE24(16)
            Case 430 To 470                             '47
                eWeerstandE24 = weerstandsarrayE24(17)
            Case 470 To 510                             '51
                eWeerstandE24 = weerstandsarrayE24(18)
            Case 510 To 560                             '56
                eWeerstandE24 = weerstandsarrayE24(19)
            Case 560 To 620                             '62
                eWeerstandE24 = weerstandsarrayE24(20)
            Case 620 To 680                             '68
                eWeerstandE24 = weerstandsarrayE24(21)
            Case 680 To 750                             '75
                eWeerstandE24 = weerstandsarrayE24(22)
            Case 750 To 820                             '82
                eWeerstandE24 = weerstandsarrayE24(23)
            Case 820 To 910                             '91
                eWeerstandE24 = weerstandsarrayE24(24)
            Case 910 To 1000                            '100
                eWeerstandE24 = weerstandsarrayE24(25)
        End Select

    End Function

    'Naar onder afronden
    Public Function eWeerstandOE12(ByVal waarde) As Single
        'Waarde E12 weerstand uitzoeken
        '8.2, 10, 12, 15, 18, 22, 27, 33, 39, 47, 56, 68, 82, 100

        'Array voor E12 weerstanden
        Dim weerstandsarrayE12(13) As Integer
        weerstandsarrayE12(0) = (82 / 10)
        weerstandsarrayE12(1) = 10
        weerstandsarrayE12(2) = 12
        weerstandsarrayE12(3) = 15
        weerstandsarrayE12(4) = 18
        weerstandsarrayE12(5) = 22
        weerstandsarrayE12(6) = 27
        weerstandsarrayE12(7) = 33
        weerstandsarrayE12(8) = 39
        weerstandsarrayE12(9) = 47
        weerstandsarrayE12(10) = 56
        weerstandsarrayE12(11) = 68
        weerstandsarrayE12(12) = 82
        weerstandsarrayE12(13) = 100

        'E12 weerstand uitzoeken
        Select Case waarde
            Case 0 To 100                               '8.2
                eWeerstandOE12 = weerstandsarrayE12(0)
            Case 100 To 120                             '10
                eWeerstandOE12 = weerstandsarrayE12(1)
            Case 120 To 150                             '12
                eWeerstandOE12 = weerstandsarrayE12(2)
            Case 150 To 180                             '15
                eWeerstandOE12 = weerstandsarrayE12(3)
            Case 180 To 220                             '18
                eWeerstandOE12 = weerstandsarrayE12(4)
            Case 220 To 270                             '22
                eWeerstandOE12 = weerstandsarrayE12(5)
            Case 270 To 330                             '27
                eWeerstandOE12 = weerstandsarrayE12(6)
            Case 330 To 390                             '33
                eWeerstandOE12 = weerstandsarrayE12(7)
            Case 390 To 470                             '39
                eWeerstandOE12 = weerstandsarrayE12(8)
            Case 470 To 560                             '47
                eWeerstandOE12 = weerstandsarrayE12(9)
            Case 560 To 680                             '56
                eWeerstandOE12 = weerstandsarrayE12(10)
            Case 680 To 820                             '68
                eWeerstandOE12 = weerstandsarrayE12(11)
            Case 820 To 1000                            '82
                eWeerstandOE12 = weerstandsarrayE12(12)
            Case Else                                   '100
                eWeerstandOE12 = weerstandsarrayE12(13)
        End Select

    End Function
    Public Function eWeerstandOE24(ByVal waarde) As Single
        'Waarde E24 weerstand uitzoeken
        '9.1, 10, 11, 12, 13, 15, 16, 18, 20, 22, 24, 27, 30, 33, 36, 39, 43, 47, 51, 56, 62, 68, 75, 82, 91, 100

        'Array voor E24 weerstanden
        Dim weerstandsarrayE24(25) As Integer
        weerstandsarrayE24(0) = (91 / 10)
        weerstandsarrayE24(1) = 10
        weerstandsarrayE24(2) = 11
        weerstandsarrayE24(3) = 12
        weerstandsarrayE24(4) = 13
        weerstandsarrayE24(5) = 15
        weerstandsarrayE24(6) = 16
        weerstandsarrayE24(7) = 18
        weerstandsarrayE24(8) = 20
        weerstandsarrayE24(9) = 22
        weerstandsarrayE24(10) = 24
        weerstandsarrayE24(11) = 27
        weerstandsarrayE24(12) = 30
        weerstandsarrayE24(13) = 33
        weerstandsarrayE24(14) = 36
        weerstandsarrayE24(15) = 39
        weerstandsarrayE24(16) = 43
        weerstandsarrayE24(17) = 47
        weerstandsarrayE24(18) = 51
        weerstandsarrayE24(19) = 56
        weerstandsarrayE24(20) = 62
        weerstandsarrayE24(21) = 68
        weerstandsarrayE24(22) = 75
        weerstandsarrayE24(23) = 82
        weerstandsarrayE24(24) = 91
        weerstandsarrayE24(25) = 100

        'Waarde E24 weerstand uitzoeken
        Select Case waarde
            Case 0 To 100                            '9.1
                eWeerstandOE24 = weerstandsarrayE24(0)
            Case 100 To 110                          '10
                eWeerstandOE24 = weerstandsarrayE24(1)
            Case 110 To 120                         '11
                eWeerstandOE24 = weerstandsarrayE24(2)
            Case 120 To 130                         '12
                eWeerstandOE24 = weerstandsarrayE24(3)
            Case 130 To 150                         '13
                eWeerstandOE24 = weerstandsarrayE24(4)
            Case 150 To 160                         '15
                eWeerstandOE24 = weerstandsarrayE24(5)
            Case 160 To 180                         '16
                eWeerstandOE24 = weerstandsarrayE24(6)
            Case 180 To 200                         '18
                eWeerstandOE24 = weerstandsarrayE24(7)
            Case 200 To 220                         '20
                eWeerstandOE24 = weerstandsarrayE24(8)
            Case 220 To 240                         '22
                eWeerstandOE24 = weerstandsarrayE24(9)
            Case 240 To 270                         '24
                eWeerstandOE24 = weerstandsarrayE24(10)
            Case 270 To 300                         '27
                eWeerstandOE24 = weerstandsarrayE24(11)
            Case 300 To 330                         '30
                eWeerstandOE24 = weerstandsarrayE24(12)
            Case 330 To 360                         '33
                eWeerstandOE24 = weerstandsarrayE24(13)
            Case 360 To 390                         '36
                eWeerstandOE24 = weerstandsarrayE24(14)
            Case 390 To 430                         '39
                eWeerstandOE24 = weerstandsarrayE24(15)
            Case 430 To 470                         '43
                eWeerstandOE24 = weerstandsarrayE24(16)
            Case 470 To 510                         '47
                eWeerstandOE24 = weerstandsarrayE24(17)
            Case 510 To 560                         '51
                eWeerstandOE24 = weerstandsarrayE24(18)
            Case 560 To 620                         '56
                eWeerstandOE24 = weerstandsarrayE24(19)
            Case 620 To 680                         '62
                eWeerstandOE24 = weerstandsarrayE24(20)
            Case 680 To 750                         '68
                eWeerstandOE24 = weerstandsarrayE24(21)
            Case 750 To 820                         '75
                eWeerstandOE24 = weerstandsarrayE24(22)
            Case 820 To 910                         '82
                eWeerstandOE24 = weerstandsarrayE24(23)
            Case 910 To 1000                         '91
                eWeerstandOE24 = weerstandsarrayE24(24)
            Case Else                               '100
                eWeerstandOE24 = weerstandsarrayE24(25)
                'Vierde ring van de weerstand rood kleuren (= tolerantie)
        End Select

    End Function
    '******************************************************************************
    '******************************************************************************
    'Vermogen van weerstanden uitzoeken
    Public Function WaardeVermogenWeerstand(ByVal eVermogen) As Single

        Select Case eVermogen
            Case 0 To 0.125
                WaardeVermogenWeerstand = 0.125   '1/8 watt
            Case 0.125 To 0.25
                WaardeVermogenWeerstand = 0.25    '1/4 watt
            Case 0.25 To 0.5
                WaardeVermogenWeerstand = 0.5     '1/2 watt
            Case 0.5 To 0.6
                WaardeVermogenWeerstand = 0.6     '0,6 watt
            Case 0.6 To 1
                WaardeVermogenWeerstand = 1       '1   watt
            Case 1 To 2
                WaardeVermogenWeerstand = 2       '2   watt
            Case 2 To 5
                WaardeVermogenWeerstand = 5       '5   watt
            Case 5 To 10
                WaardeVermogenWeerstand = 10      '10  watt
            Case 10 To 25
                WaardeVermogenWeerstand = 25      '25  watt
            Case 25 To 50
                WaardeVermogenWeerstand = 50      '50  watt
            Case 50 To 100
                WaardeVermogenWeerstand = 100     '100 watt
        End Select

        Return WaardeVermogenWeerstand

    End Function
    '******************************************************************************
End Module
