VBA code to add new sheets with a template based on selected range

So, I have an excel File where I have created a macro, which when run, lets me choose a range of my choice, which when selected, creates new sheet by those names after the second page (Index Page). But with the above code, there could be a chance that the sheet name I want to add already exists or I might have a blank cell in that name range.

In that case, I need a code that can verify if the sheet with the same name already exists or if its a blank cell.
If both conditions are fulfilled only then it should add a new sheet.

Also, While this new sheet is being created, i have a sheet called template from where i would like the data to be copied from in the new sheet.

Do not create a sheet if its a blank cell.

If sheet already exists then show me a message: "Sheet x(sheet name) already exists.