Forum Discussion

Kirsty Lowe's avatar
Kirsty Lowe
Copper Contributor
May 01, 2018

Removing duplicates when using TEXTJOIN

Hi,

I am using TEXTJOIN to being into one cell entries from a separate column, where I am ignoring empty cells and separately by &.

This works fine.

However, I can have duplicate values in an individual cell in the column I am using in my TEXTJOIN and I'd like to be able to supress duplicates.

For example:

 

Column F on Worksheet 1 has the following in the 6 cells:

  • 123, 890, 22
  • 560
  • 123, 890, 22
  • 22
  • test
  • test

Ideally what I would like in my single cell is:

123, 890, 22 & 560 & test

But I realise that is probably unrealistic.

 

So I'd like to be able to get to (e.g. hiding the cell that exactly matches the other):

123, 890, 22 & 560 & 22 & test

 

The function I am using is:

=TEXTJOIN(" & ",TRUE,'1'!$F$10:$F$606)

 

This returns:

123, 890, 22 & 560 & 123, 890, 22 & 22 & test & test

 

I have looked into combining this function with 'MATCH' but it hasn't worked, I get value errors.  I assume maybe because I have a mix of numerics and characters?

 

Many thanks

Kirsty

 

    • Kirsty Lowe's avatar
      Kirsty Lowe
      Copper Contributor

      Hi Haytham,

       

      Thank you for your response.

       

      However, I get a VALUE error in Excel:

      =TEXTJOIN(" & ",TRUE,IF(MATCH('1'!$F$10:$F$606,0)=ROW('1'!$F$10:$F$606)-ROW('1'!$F$10)+1,'1'!$F$10:$F$606,""))

      Is what I translated your formula in to.

      Kirsty

    • Kirsty Lowe's avatar
      Kirsty Lowe
      Copper Contributor
      Hi,
      I have also tried by watching the video and placing the formula into my sheet so I didn't have to reference a different worksheet, and it still fails to evaluate the data.
      =TEXTJOIN(", ",,IF(MATCH(F10:F50,F10:F50,0)=(ROW(F10:F50)-ROW(F9)),F10:F50,""))
      Sorry!
      Kirsty
  • Kirsty Lowe's avatar
    Kirsty Lowe
    Copper Contributor

    So sorry I got there in the end, with help from Haytham Amairah

    I went back to the video you linked and used the following formula, remembering to use Ctrl+Shift+Enter to apply it, and this time it worked :)

    {=TEXTJOIN(", ",,IF(F10:F50<>"",IF(MATCH(F10:F50,F10:F50,0)=(ROW(F10:F50)-ROW(F9)),F10:F50,""),""))}

    Thank you!

     
     
     
  • leo_bourikov's avatar
    leo_bourikov
    Copper Contributor

    Kirsty Lowe I did this and attached screenshot (Excel 2016):

    =TEXTJOIN(",",TRUE,UNIQUE(IF(A:A=A2,B:B,"")))

     

    Hope it helps!

  • Josh_Waldner's avatar
    Josh_Waldner
    Brass Contributor
    you just might want to use this formula: =TEXTJOIN(" & ",TRUE,UNIQUE(F:F,FALSE,FALSE))
  • TBIT__777's avatar
    TBIT__777
    Copper Contributor
    Just want to say thanks. This post helped me today with the same issue!

Resources