There is no entire (holomorphic everywhere) function $f(z)$ with $f(f(z)) = e^z$. To see this, one can use Picard's little theorem, and do case analysis. For example, $f(z)$ cannot take all values, for then so does $f(f(z))$, while $e^z$ omits zero. The case that $f(z)$ has an omitted value can also be excluded, this is not difficult.

EDIT: Perhaps I should be more explicit. If $f(z)$ omits a value, that has to be zero, for $e^z$ takes all other values. Thus there is an entire function $h(z)$ such that $f(z) = e^{h(z)}$ (the complex plane is simply connected). Now 

$
e^{h(e^{h(z)})} = e^z
$

and so $h(e^{h(z)}) = z + 2{\pi}ik$ for some fixed integer $k$. Since the right hand side takes all values, so does the left hand side. So $h(z)$ takes the two values $0$ and $2{\pi}i$, say $h(a) = 0$ and $h(b) = 2{\pi}i$. Now 

$
a + 2{\pi}i = h(e^{h(a)}) = h(e^0) = h(e^{2{\pi}i}) = h(e^{h(b)}) = b + 2{\pi}ik
$

and so $a = b$. Contradiction!

Alternatively, use the theorem of Polya that if $f(z)$ and $g(z)$ are entire functions, then 
$f(g(z))$ is of infinite order unless (i) $f(z)$ is of finite order and $g(z)$ is a polynomial, or (ii) $f(z)$ has order zero and $g(z)$ is of finite order. The exponential function has order $1$.

EDIT: Here $f(f(z)) = e^z$ yields the absurd conclusion that $e^z$ is a polynomial in case (i). While in case (ii) we find that $f(z)$ is an entire function of order zero with 
$f(f(z)) = e^z$. But an entire function of order zero that is not a polynomial takes every value infinitely often (by the Hadamard factorization theorem), so we are led to the absurd conclusion that $e^z$ takes the value zero infinitely often.