Software Venture Consulting

FileMaker Pro downloads & Resources
FileMaker Custom Functions
FileMaker Web Viewer Examples
FileMaker Pro & Lasso Consulting
Training
FileMaker Books
FileMaker Articles
FileMaker Error Reference

Free Web Tools
Free FileMaker Tools

Personal Pages
Videos
Adventures
Links

Shopping Cart
Shopping Cart

Search:

Free Newsletter
Signup


Contact


Privacy Policy



FileMaker is a registered trademark of FileMaker, Inc. in the U.S. and other countries.

 

 FileMaker Pro Custom Functions

List  |  Show Random  |  Upload  |  Add This to Your Site

ValueExists ( Value ; ValueList )

Rate this function:  

RatingRatingRatingRatingRating
  Average rating: 3.9  (40 votes)
  Discuss this Custom Function

Caleb Ruth, Data Performance LLC
http://www.dataperformancellc.com

A recursive function that returns a 1 if a value is found in the supplied list

Sample Input:
ValueExists ( "rabbit" ; "mouse¶rabbit¶lynx¶snake" )
Sample Output:
1


 Then copy & paste into FileMaker Advanced's Edit Custom Function window.

Click here to copy To Clip Manager if you have myFMbutler's Clip Manager installed

Description:

The same results can be had using the native FilterValues function, but I find this to be more logical. Recursion limits apply to the size of the list.

Note: these functions are not guaranteed or supported by BrianDunning.com. Please contact the individual developer with any questions or problems.

This is my Custom Function and I want to edit it

Discuss:

5 most recent comments | Show all 12 comments

FilterValues is slow. PatternCount is faster than FilterValues, but Position is even faster. Here is a sample speed test of functions on a 10K starting found set on a local file:

FilterValues: 21 seconds
PatternCount: 10 seconds
Position: 6 seconds

The Position function only searches for the first match in the list, not all matches like FilterValues and PatternCount.

So, here is a better non-recursive code optimized for speed (returns True/False):

GetAsBoolean (Position ( ¶ & valueList & ¶ ; ¶ & filterBy & ¶ ; 1 ; 1 ) )

John Davis, Houston
June 27, 2015 10:27am

More intuitive 2nd parameter name than above. ValueExists ( valueList ; value ) :

GetAsBoolean (Position ( ¶ & valueList & ¶ ; ¶ & value & ¶ ; 1 ; 1 ) )

John Davis, Houston
June 27, 2015 10:40am

GetAsBoolean (Position ( ¶ & valueList & ¶ ; ¶ & value & ¶ ; 1 ; 1 ) )
returns 1 when valuelist is "123" and value is "2"
beware of that.

Federico, Bellinzona
February 17, 2017 2:15am

Edit:
GetAsBoolean (Position (valueList; value ; 1 ; 1 ) )
returns 1 when valuelist is "123" and value is "2"
beware of that.

Federico, Bellinzona
February 17, 2017 3:39am

The pilcrows are there for exactly that reason, Federico.

Tom Fitch, Portland, Oregon
March 29, 2017 11:21am

Make a comment about this Custom Function (please try to keep it brief & to the point). Anyone can post:

Your Name:
City/Location:
Comment:
characters left. If you paste in more than 1500 characters, it will be truncated. Discuss the function - advertisements and other useless posts will be deleted.
Answer 8 + 5 =
Search for Custom Functions:

Custom Functions Widget
Download the Custom Function Dashboard Widget for OS X
Keep all the latest Custom Functions right at your fingertips!

Newest Custom Functions:

1. decFromHex ( hexValue )
  (Mon, Oct 16, 12:34pm)
2. MonthYearList ( startmonth ; startyear ; numbermonth ; short )
  (Mon, Oct 16, 3:38am)
3. ErrorDescription ( errorNumber )
  (Wed, Sep 27, 2:51am)
4. decodeEntities (text)
  (Wed, Sep 27, 1:22am)
5. HexidecimalToNumber ( HexidecimalValue ; counter )
  (Mon, Sep 25, 12:39pm)
6. FixedFieldConverter ( Fieldname ; f1 ; f2 ; f3 ; f4 ; f5 ; f6 ; f7 ; f8 ; f9 ; f10 ; f11 ; f12 ; f13 ; f14 ; f15 ; f16 ; f17 ; f18 ; f1
  (Fri, Sep 15, 12:34pm)
7. ShannonEntropy ( text )
  (Thu, Sep 07, 5:59am)
8. LetterCount ( text ; summary )
  (Thu, Sep 07, 5:53am)

RSS Feed of Custom Functions