PhoneMaskAU ( number )
Rate this function: Average rating: 4.2 (10 votes) Discuss this Custom Function
Bob Stuart Crouch, Think Data
http://thinkdata.com.au
Mask Australian phone numbers
Sample Input:
54425624
0413350993
1800555555
131336 |
|
Sample Output:
5442 5624
0413 350 993
1800 555 555
13 13 36 |
|
Description:
The heavy lifting was done by Timothy Brown of Antidote Solutions in his CF PhoneMask. I chose to adapt his good work and tried to make it applicable to all the kinds of phone numbers encountered in Australia. Here, you'll find fixed line numbers "(##) #### ####", cellular phones "#### ### ###", 1800 and 1300 numbers "1800 ### ###" and 6-digit numbers which look like 13 ## ##. PhoneMaskAU accounts for all of them, but if you can think of ways to make it more elegant, I'm all ears.
I have made no attempt to incorporate Area Code into this Custom Function. Instead, I use a user-entered global Default Area Code in my databases, set to auto enter (do not replace existing values, if any) which auto-fills another field called AreaCode, if (Number) is 8-digits. The Auto Enter calc looks like this:
NOTE: THIS CORRECTS THE EARLIER VERSION WHICH CONTAINED "SPACE" CHARACTERS WITHIN THE FILTER FUNCTION. HERE, THE SPACES ARE REMOVED. APOLOGIES.
If ( Length ( Filter ( Phone; "0123456789" ) ) = 8 ; gDefaultAC ; "" )
Because it is set NOT to "replace existing values, if any", the user can type another Area Code which won't be changed automatically to the Default Area Code if the phone number is altered.
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:Make a comment about this Custom Function (please try to keep it brief & to the point). Anyone can post:
|
Newest Custom Functions:
| 1. |
list.intersect (listA; listB) |
| |
(Mon, May 14, 12:43pm) |
| 2. |
WeekStart ( weekOfYear ; year ) |
| |
(Sat, May 12, 8:42am) |
| 3. |
PercentToWords (FIELD) |
| |
(Thu, May 10, 3:16pm) |
| 4. |
PercentToText (FIELD) |
| |
(Thu, May 10, 2:37pm) |
| 5. |
StripReserved( text ) |
| |
(Wed, May 02, 6:05pm) |
| 6. |
ListBaseTables |
| |
(Wed, May 02, 3:48pm) |
| 7. |
ValidEmail( theEmail ) |
| |
(Wed, May 02, 7:27am) |
| 8. |
UltraDate (Text; LongDate_or_DateDigit) |
| |
(Wed, May 02, 6:07am) |
 |
|
Hi Bob
Nice one however it needs to be extended. Would be nice to format phone numbers to take advantage of international number eg 612 9334 5600 or just local eg 02 9334 5600
Doug Wesson, Sydney Australia
February 15, 2009 5:08pm