I'm trying to write a script that will replace the colors of all same-colored shapes, including those on non-visible layers. I am new to Photoshop scripting, but I imagine the pseudocode would work something like this:

for (all shape layers)
  if (fill color = #123456)
    fill color = #000000

Is this possible to do?

I tried running the script here, but got an error at 'executeActionGet' (This functionality may not be available in this version of Photoshop). I am using Photoshop CS6.

  • Except offcourse if (fill color = #123456) is not entirely ambigious to photoshop.
    – joojaa
    Apr 27, 2015 at 8:50
  • What was the error? According to Adobe’s own documentation, executeActionGet is available in CS6, too, so it's more likely it's the parameter (the actionReference) something’s wrong with. Dec 24, 2015 at 6:13

1 Answer 1


I have used ChangeColor in the past to achieve this. Here is the GitHub repo > https://gist.github.com/theinsanecow/895810

It sounds like this is exactly what you're after, but even if it's just good as a reference point for your script, it should help.

  • 1
    OP said: "I tried running the script here, but got an error at 'executeActionGet' ..."
    – Joonas
    Apr 27, 2015 at 9:03

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.