To do this in Visual LISP (ObjectDBX) would relegate you to processing those drawings in series (one at a time).

Instead, if using 2015+ version, consider setting up a simple Script to do what you want, and process multiple drawings in parallel (at the same time) using Core Console.

Civil 3D team offers a standalone Batch Save Utility (BSU) that might help, or this post may help:

Just be mindful of how many you select at once, given your workstation's available resources.

Thread officially zombified.