Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Enhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.

Reply
brockry1
Helper II
Helper II

Return a 1 if column has text in it using DAX

brockry1_0-1739562637946.png

How do I add another column that will bring back a value of "1" if the ID column contains text. 

 

1 ACCEPTED SOLUTION
Greg_Deckler
Community Champion
Community Champion

@brockry1 Here is one way. PBIX attached below signature.

Column = 
    VAR __Len = LEN( [Id] )
    VAR __Table = 
        ADDCOLUMNS(
            ADDCOLUMNS(
                ADDCOLUMNS(
                    GENERATESERIES( 1, __Len, 1 ),
                    "__Char", MID( [Id], [Value], 1 )
                ),
                "__Unicode", UNICODE( [__Char] )
            ),
            "__IsText", 
                IF(  
                    ( [__Unicode] >= 65 && [__Unicode] <= 90 ) ||
                    ( [__Unicode] >= 97 && [__Unicode] <= 122 ),
                    1, 0
                )
        )
    VAR __Result = IF( COUNTROWS( FILTER( __Table, [__IsText] = 1 ) ) > 0, 1, 0 )
RETURN
    __Result

 



Follow on LinkedIn
@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
DAX For Humans

DAX is easy, CALCULATE makes DAX hard...

View solution in original post

2 REPLIES 2
Greg_Deckler
Community Champion
Community Champion

@brockry1 Here is one way. PBIX attached below signature.

Column = 
    VAR __Len = LEN( [Id] )
    VAR __Table = 
        ADDCOLUMNS(
            ADDCOLUMNS(
                ADDCOLUMNS(
                    GENERATESERIES( 1, __Len, 1 ),
                    "__Char", MID( [Id], [Value], 1 )
                ),
                "__Unicode", UNICODE( [__Char] )
            ),
            "__IsText", 
                IF(  
                    ( [__Unicode] >= 65 && [__Unicode] <= 90 ) ||
                    ( [__Unicode] >= 97 && [__Unicode] <= 122 ),
                    1, 0
                )
        )
    VAR __Result = IF( COUNTROWS( FILTER( __Table, [__IsText] = 1 ) ) > 0, 1, 0 )
RETURN
    __Result

 



Follow on LinkedIn
@ me in replies or I'll lose your thread!!!
Instead of a Kudo, please vote for this idea
Become an expert!: Enterprise DNA
External Tools: MSHGQM
YouTube Channel!: Microsoft Hates Greg
Latest book!:
DAX For Humans

DAX is easy, CALCULATE makes DAX hard...
Fowmy
Super User
Super User

@brockry1 


Not sure if I got your question.

Add a calculated column : 

INT( NOT ISBLANK(Tablename[ID]) && ISTEXT(Tablename[ID]) )

 

Did I answer your question? Mark my post as a solution! and hit thumbs up


Subscribe and learn Power BI from these videos

Website LinkedIn PBI User Group

Helpful resources

Announcements
July 2025 community update carousel

Fabric Community Update - July 2025

Find out what's new and trending in the Fabric community.

July PBI25 Carousel

Power BI Monthly Update - July 2025

Check out the July 2025 Power BI update to learn about new features.