Apply hole pattern to mesh
Here is just an example about doing something like that with booleans, as I stated in my comment above...

starting form a shape like this:



and then from a copy object, using a cylinder as duplivert (faces), later converted to real object, like this:



then using booleans to subtract the second from the first, to obtain this:



As said, this would require some more regular base mesh topology, and could not be applicable to your model, at least as it is now, but could give you some inspiration to find a setup that works...