You could use two ProgressBars: the first one for the progress in the loop of unzippers, and the second one for the progress within each unzipper (like in my code).
The simplest way the design the first progress bar would be to simply count the zip files, set the count to ProgressBar.Max, and increment ProgressBar.Position with each zip file handled. This disadvantage is that there is no difference in progress between small and huge zips. Alternatively you could consider the file size of the zipped files: Add the file sizes of all zip files, set the total to Progressbar.Max and increment the Progressbar.Position with each processed zip file by the size of the zip file.
Study the code of OnlinePackageManager, it uses two progress bars for unzipping several zip files.