# Conditional Text Color

This topic is 6603 days old. Please don't post here. Open a new topic instead.

## Recommended Posts

Am trying to use the text color function to Display Red when a person is under 18 yrs old. Having some questions about setting up the calc to achieve this.

Help would be appreciated.

Thanks

##### Share on other sites

The fields I have set are DOB(date) and then Age is a calc. I want the Age field to turn red when the person is a minor <18 yrs old. Hope this additional info helps.

##### Share on other sites

Try this text calculation:

Let ( [ C = Get ( CurrentDate ) ;

yC = Year ( C ) ;

dayC = DayOfYear ( C ) ;

B = BirthDay ;

yB = Year ( B ) ;

dayB = DayOfYear ( B ) ;

Num_Years = yC - yB -(dayC < dayB)

] ;

Case ( Num_Years < 18 ; TextColor ( Num_Years ; RGB ( 255 ; 0 ; 0 ) ) ; Num_Years ) )

##### Share on other sites

A problem that I am running into is that the Age is already a calc. When I try to add the Text Color function to it the Result is a "?" Am I going to need two seperate fields or is there a way to combine the two calcs? Help would be appreciated.

Thanks.

##### Share on other sites

Make sure it's a text field. TextColor doesn't work with non-text fields. You may want to use two fields specifically for this reason.

Also, Ralph's calc looks a little off. You want to compare the day of year for the birthday based on the current year. So dayB should be equal to DayOfYear(Date( Month(:; Day(:; yC )) IMO.

##### Share on other sites

I'd thought by now the "age in years" question would be settled. Using DayOfYear() is problematic on account of leap years.

##### Share on other sites

I knew I didn't like that calculation. It is from Using FileMaker 7. It may be the only thing in the book that is questionable.

##### Share on other sites

You're right, of course. It should be (C < Date( Month(:; Day(:; yC )). Ralph confused me because I haven't dealt with age calcs in a while.

##### Share on other sites

This topic is 6603 days old. Please don't post here. Open a new topic instead.

## Create an account

Register a new account