Need Custom Function to Return Numeric Value Rather Than String Value

Alex20850

Board Regular
Joined
Mar 9, 2010
Messages
102
My current custom function is:


Function GetValue(ByVal str As String) As String
With CreateObject("Scripting.Dictionary")
.Add "A", "Apples"
.Add "B", "Bananas"
If .exists(str) Then GetValue = .Item(str)
End With

In this function, if I put "=GetValue(B1)" in A1 and B1 is A, then I get Apples.

In a new function, I would like a value of A in B1, to return a value of .7.
In a new function, I would like a value of B in B1, to return a value of .9.
 

MickG

MrExcel MVP
Joined
Jan 9, 2008
Messages
14,841
Try:-
Code:
Function GetValue(ByVal str As String) As Double
 With CreateObject("Scripting.Dictionary")
    .Add "A", 0.7
    .Add "B", 0.9
 If .exists(str) Then GetValue = .Item(str)
End With
End Function
 
Last edited:

Yongle

Well-known Member
Joined
Mar 11, 2015
Messages
4,643
Office Version
365
Platform
Windows
Try this

Code:
Function GetValue(ByVal str As String) [COLOR=#000080]As Double[/COLOR]
    With CreateObject("Scripting.Dictionary")
        .Add "A", 0.7
        .Add "B", 0.9
        If .exists(str) Then GetValue = .Item(str)
    End With
End Function
 
Last edited:

Forum statistics

Threads
1,081,702
Messages
5,360,743
Members
400,595
Latest member
T_Dubs

Some videos you may like

This Week's Hot Topics

  • VBA (Userform)
    Hi All, I just would like to know why my code isn't working. Here is my VBA code: [CODE=vba]Private Sub OKButton_Click() Dim i As Integer...
  • List box that changes fill color
    Hello, I have gone through so many pages trying to figure this out. I have a 2020 calendar that depending on the day needs to have a certain...
  • Remove duplicates and retain one. Cross-linked cases
    Hi all I ran out of google keywords to use and still couldn't find a reference how to achieve the results of a single count. It would be great if...
  • VBA Copy and Paste With Duplicates
    Hello All, I'm in need of some input. My VBA skills are sub-par at best. I've assembled this code from basic research and it works but is...
  • Macro
    is it possible for a macro to run if the active cell value is different to the value above it
  • IF DATE and TIME
    I currently use this to check if date has passed but i also need to set a time on it too. Is it possible? [CODE=vba]=IF(B:B>TODAY(),"Not...
Top