Director David Fincher decided against giving the role of main character Lisbeth Salander - who is played by Rooney Mara - to the 26-year-old beauty, despite her "great" audition, because people "can't wait for her to take her clothes off".
He told Vogue.com: "We flew in people from New Zealand and Swaziland and all over the place.
"Look, we saw some amazing people. Scarlett Johansson was great. It was a great audition, I'm telling you. But the thing with Scarlett is, you can't wait for her to take her clothes off.
"I keep trying to explain this. Salander should be like E.T. If you put E.T. dolls out before anyone had seen the movie, they would say, 'What is this little squishy thing?' Well, you know what? When he hides under the table and he grabs the Reese's Pieces, you love him! It has to be like that."
Before finally casting Rooney in the role, David - who directed 'The Social Network', the 26-year-old stunner's last movie - was worried he wouldn't ever find the right actress to portray the character.
He added: "I had seen a lot of actresses. I was beginning to get to the point where I was thinking, 'Maybe conceptually you are talking about a person who doesn't exist'."