Blog

28 Comments

  • Devin Concannon:
    August 31, 2011 at 11:00 am

    This is GENIUS! Thank you for just saving me countless hours…

  • Natzir:
    August 31, 2011 at 11:02 am

    This post is AWESOME! thanks a lot Brett

  • Mike G:
    August 31, 2011 at 11:48 am

    Wow. This is gold. Thank you!

  • Steve at Choomka:
    August 31, 2011 at 12:02 pm

    Thanks for the article, for some reason using Excel for creating unique descriptions like this hasn’t really crossed my mind before, strange as I use Excel pretty much daily for managing product data/csvs. Going to give this a go though, I love how expandable it it, previously I was purchasing unique descriptions from content writers, this could potentially save a fair bit of money/time though and I can no doubt rejig the descriptions I already have!

    Pretty valuable, now I just need to find a little time to implement it! :)

  • Brett Snyder:
    August 31, 2011 at 6:17 pm

    @Devin @Natzir @Mike Thanks so much! Glad this can save you some time!

    @Steve I don’t think you’re alone there, I even forget sometimes that Excel is much more than just a numbers beast :-)

  • Hawaii SEO:
    August 31, 2011 at 8:53 pm

    It never ceases to amaze be the things you can do with Excel. Way to push Excel to it’s limits.

  • Tamsin M:
    September 1, 2011 at 2:07 am

    “I was not able to find a way to substitute both variables from the same cell, which is why it required multiple steps.”

    Can’t you just nest the substitutes?
    =SUBSTITUTE(SUBSTITUTE(I2,”[Product]“,A2),”[Category]“,B2)

    For the whole thing in one cell:
    =SUBSTITUTE(SUBSTITUTE(CONCATENATE((INDEX(Sentences!$C$4:$G$4,1,TRUNC((5*RAND())+1))),” “,(INDEX(Sentences!$C$6:$G$6,1,TRUNC((5*RAND())+1))),” “,(INDEX(Sentences!$C$5:$G$5,1,TRUNC((5*RAND())+1))),” “,(CONCATENATE(“The product fits the following themes: “,C2,”, “,D2,” and “,E2,”. “)),” “,(INDEX(Sentences!$H$5:$L$5,1,TRUNC((5*RAND())+1))),” “,(CONCATENATE(“Manufactured by “,F2,”. “)),(CONCATENATE(“[Product] comprised of “,G2,”. “)),(CONCATENATE(“Available in “,H2,”. “)),(INDEX(Sentences!$C$7:$G$7,1,TRUNC((5*RAND())+1)))),”[Product]“,A2),”[Category]“,B2)

  • Luminaire:
    September 1, 2011 at 4:22 am

    Great post! Thank you for sharing such a helpful method.

  • Martokus:
    September 1, 2011 at 4:59 am

    I’ve used same principle in the past but for generating website product descriptions. Used a software called Parabuilder (no longer existing I think) that besides rotating sentences also shuffles the words of each sentence. I prefer it to Excel because it’s web based and you just call it via your program and it returns a set of content.

  • Jeff:
    September 1, 2011 at 9:08 am

    Just when you think you’ve seen every little technique in Excel, you come up with this! Awesome!
    Definitely going to use this in the future for the larger sites with too many duplicate (or non existent) meta info.

  • gotcha5832:
    September 1, 2011 at 10:05 am

    Pretty impressive, but what don’t you did it by php?

  • Annie Cushing:
    September 1, 2011 at 4:53 pm

    Wow! These are some awesome formulas – and even better strategy! Well done!

    And thanks for the shout out. :)

  • Brett Snyder:
    September 1, 2011 at 5:55 pm

    @Hawaii @Luminaire @Jeff Thanks for the kind words!

    @Martokus I’m not familiar with Parabuilder but you must be right that it doesn’t exist anymore b/c I wasn’t really able to find much on it. I’ll keep looking though, thanks for the tip!

    @gotcha I’m not much of a programmer so not really versed in creating things like this for PHP…I just knew I had a problem and wanted a solution in the best tool I knew how :-)

  • Brett Snyder:
    September 1, 2011 at 5:56 pm

    @Tamsin BRILLIANT! I was playing around with nested substitutes but I couldn’t quite get it to work right. Thank you SO much for the tip, going to add it to this post right now!

  • Carlo Branca:
    September 1, 2011 at 8:56 pm

    Wow, i still have not the need to make a e’commerce website so big,
    but your solution it’s great to remember when it will be the right moment.
    I loved also more the part where You say that can be apllyable to metadescription and that it’s a part i will test for a client for sure. Thank You!

  • Luminaire:
    September 2, 2011 at 8:35 am

    @Brett I tried to create a tool like yours with excel but I didn’t see how to manage with the “concatenate” function coupled with the “random” one.

    It seems easy when you give all the formula;

  • Brett:
    September 4, 2011 at 4:59 pm

    @Carlo I’m glad you’ll be able to use it with your clients!

    @Luminaire Appreciate that, that’s why I wanted to give each step as well so if you want to construct it piece by piece you’ve got all the tools!

  • Cole Whitelaw:
    September 6, 2011 at 11:21 am

    I would abstract that formula one step further.

    You’re hardcoding in that you have 5 sentences which means that you have a lot of formulae to change if you want more variety in the future.

    so instead of =INDEX(Sentences!$C$6:$G$6,1,TRUNC((5*RAND())+1))

    I’d extend the ranges to the end of the sheet and use COUNTA() to see how many actual sentences there are in there – that way you could have differing numbers of intro, body or finals or just more.

    =INDEX(Sentences!$6:$6,1,TRUNC((COUNTA($6:$6)*(RAND())+1)))

  • Brett:
    September 7, 2011 at 8:01 am

    @Cole Love the thinking here and taking it to the next level! I agree it makes perfect sense and allows it to be more fluid for building it out, thanks!

  • Mitchell Allen:
    September 10, 2011 at 4:33 am

    Brett, this is a totally cool way to generate semi-random content. I’ve used Excel to generate everything from HTML to Sudoku. However, I would have been partial to importing the whole kit and kaboodle into Microsoft Access. Here’s why:

    Once you’ve discovered how convennient this is, you’re going to want to tweak out the bits you DON’T like about the concatenation schema. Excel’s row,column limitation stifles creativity. Instead of thinking about randomness, context and other content-relevant issues, you have to expand columns, update formulas and consider using named arrays to simplify those pesky references.

    With Access – or any database application, you can take advantage of queries and look-up tables. This means that your choices don’t have to fit in an MxN array. You could have 100 introductory sentences – which is really the meat of this varied content project. The other random fields could be enlarged over time. (Cole Whitelaw’s suggestion, Access-style!)

    But here is the best part. You can sub-divide your sentence groups, making even more granular randomness. Remember Mad-libs? Let’s take “Category Sentences”, for example. You could fine-tune things by creating multiple random choices for this snippet:

    All your [Category] friends will be [adjective].

    By creating a list of adjectives, you’ve opened up more variety. Personally, that’s just the beginning, as people can sense Mad-lib substitutions. Someone mentioned Parabuilder in the context of word order. This would be quite simple to do in Access, as long as you keep the basic sentence structure clear.

    Of course, if this were an ad hoc quick-fix, I would definitely use Excel. :)

    Cheers,

    Mitch

  • David:
    September 20, 2011 at 4:56 am

    Some great tips here thanks a lot. Always on the look out for ways to make things quicker with excel.

  • msaez:
    December 7, 2011 at 1:27 pm

    Superb! Efficiency above all…and long live Excel!

  • Brett:
    December 7, 2011 at 6:09 pm

    Thank you both, appreciate it!

  • Rich Norton:
    December 20, 2011 at 4:56 am

    Oh wow, that is quite incredible. Excel is a very flexible tool which I am still not entirely on top of.

    You claims that you are unfamiliar with coding, but a lot of the Excel formula you posted looks a great deal like ugly Actionscript 2.0. From the little I know of Excel’s formula system it seems very similar syntactically to some of the cruder, less flexible coding languages.

    Maybe you’d find coding more familiar than you suspect?

    Thanks,

    Rich

  • Hussain:
    February 2, 2012 at 5:24 am

    The formula is not working for me…! seriously need ur help! I am sure that I have make some mistake! Would love to get ur help in this regard!

  • Hussain:
    February 2, 2012 at 5:45 am

    Oh thnx, I got it :)

  • Luminaire enfant:
    February 14, 2012 at 6:20 am

    Hi,

    The worksheet is no more downloadable ?!?

    How can I retrieve it ?

  • Luminaire enfant:
    February 29, 2012 at 11:03 am

    Could anyone {give|send} me a link to retrieve the worksheet please ? (@Hussain @Rich @David …)

    Thanks !!

Add a Comment

Support

Get our Newsletter

Keep up-to-date search trends, latest blog posts and more.