In Python i would do the following
jkk = {'Cadmium': 0.5, "Bly": 40}
def JKKCadmium(result):
return result / jkk["Cadmium"] - 1
def JKKBly(result):
return result / jkk["Bly"] - 1
I tried to do something similar in VBA
Option Explicit
Private JKK As New Collection
JKK.Add 0.5, "Cadmium"
JKK.Add 40, "Bly"
Function JKKCadmium(result As Double) As Double
JKKCadmium = result / JKK("Cadmium") - 1
End Function
Function JKKBly(result As Double) As Double
JKKBly = result / JKK("Bly") - 1
End Function
But that throws a compile error: "Invalid outside procedure". How can I make the VBA code work?
EDIT: Using dictionary instead still throws same error
Option Explicit
Private JKK As New Scripting.Dictionary
JKK.Add "Cadmium", 0.5
JKK.Add "Bly", 40
Function JKKCadmium(result As Double) As Double
JKKCadmium = result / JKK("Cadmium") - 1
End Function
Function JKKBly(result As Double) As Double
JKKBly = result / JKK("Bly") - 1
End Function