Software Venture Consulting

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

Free Web Tools
Free FileMaker Tools

Personal Pages

Shopping Cart
Shopping Cart


Free Newsletter


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

XORvalues ( ListA ; ListB )

Rate this function:  

  Average rating: 4.3  (40 votes)
  Discuss this Custom Function

Ray Cologon, NightWing Enterprises

Returns all lines that are different in two lists.

Sample Input:
XORvalues ( "Apple¶Pear¶Orange¶Banana"; "Lemon¶Apple¶Orange¶Grape" )
Sample Output:

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


This function returns a single instance of all lines that are in ListA but not in ListB *and* of all lines that are in ListB but not in ListA. In other words lines that are in either field but *not* in both.

XORvalues has many applications in complex text processing, including but not limited to comparison of value lists (and lists of field values) in the synchronization of databases.

Note that a useful spin-off is that if one of the supplied parameters is null (""), the function will operate to return UNIQUE values from the other list - Ie it will eliminate duplicates. A single instance of each value will be returned, in the order of their first occurrence in the list.

The function as set out here is 'tuned' to return a combined list without a trailing carriage return. This behavior can readily be adjusted to line up with FileMaker's other 'values' functions if preferred.

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

This is my Custom Function and I want to edit it


Is it possible to use this funtion and just have the items that are different in List B to List A returned? At the moment it returns differences between the two which I am using to see what has changed. I am trying to report changes but only want what it has changed "to", as it currently stands I am getting "changed to and changed from" which is useful in other reports but in this instance I only want to see what is different in list B when compared to List A. Any help appreciated.

Katy Butterworth, New Zealand
October 01, 2009 3:50pm

If A = (1,2,3) and B = (2,3,4);

XOR( List( A; B); A)

Bruce Robertson, Redmond
June 17, 2010 12:32pm

Note: This function will wipe out any of the "·" characters (ASCII 225) you might have in your value list. Unlikely, but important to note side effects like this.

Daniel A. Shockley, New York, NY
November 16, 2010 11:15am

Exactly what I needed.
Thank you very much.

Alistair Hay, UK
January 26, 2018 2:37am

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

Your Name:
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 0 + 7 =
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. ReverseByteOrder ( bytes )
  (Thu, Aug 09, 12:06pm)
2. BytesToDec ( hex )
  (Thu, Aug 09, 11:47am)
3. GetAsHexBytes ( number ; bytes )
  (Thu, Aug 09, 10:50am)
4. ValCorrelationCoeff ( XValueList; YValueList; Xmean; Ymean; XStdDev; YStdDev )
  (Wed, Aug 08, 4:17pm)
5. ValLeastSquaresSlope ( XValueList; YValueList; Xmean; Ymean )
  (Wed, Aug 08, 4:10pm)
6. ValueMath ( List1 ; List2 ; operation )
  (Wed, Aug 08, 4:05pm)
7. GetExtension ( File )
  (Tue, Aug 07, 10:22am)
8. Occurrences( text; casing)
  (Fri, Aug 03, 5:34am)

RSS Feed of Custom Functions