As you can see in the codes for add to/insert from these macros are independent from the shape names. They act on the slide number. Would it be an idea to store the names given by the user somewhere else and let getLabel take it from there? Maybe paste the names given by the user into some cells of a hidden Excel sheet? Or would this have the same problem - that the Excel sheet has to be open, to be read by the getLabel function?