DiRoots Sheet Link ..kind of.. Data Row Schedules to Excel and back - free replacement

The firm I work for uses data row key schedules for consultant drawing lists. I am trying to replace DiRoots workflow since I cannot justify the price for only using this one function and am super close.

With consultant sheet lists, in Revit add the needed number of data rows, export to excel.
Mess with the lists in excel (sorting order, replacing text, ect.) save and close.
Import the data back into the data row schedule on the cover sheet including architectural sheet list, also update sheet parameters to changes made in the excel file.

I blundered my way through and got this process down to running 2 scripts, export then import. Yay! There are some annoyances I’d like help solving though. Also, this feels clunky… is there anything that can be optimize it? I’m a dynamo beginner so honestly not certain if this is efficient or not… but it works regardless…

Does not run in player, only editor window, problems w/selecting the excel in player mode.
Cannot import number only values, must include letter or special character
Data.ImportExcel works, stupid OpenXMLImportExcel does not
Sorting pages by “A-“ is not enough, it was catching my SKA- pages (so I deleted them while troubleshooting this Dynamo routine but will need them back) Is there a key value for starts with__ but excludes__.?
One thing to note, this I’m OK with, cannot change sheet number in excel, only in revit

So, can I bribe help out of people with these last steps by sharing what got me here? Thanks folks, happy Friday!

Export Drawing Lists.dyn (215.0 KB)
Import_ExcelwDynamoDWGS.dyn (779.8 KB)
2099.99.99 DrawingListsCombined.xlsx (20.7 KB)
Drawing List Instructions.pdf (623.6 KB)
Drawings Lists.pdf (176.3 KB)

Ive made this at work in c# and id suggest investigating two additions to your workflow that will help it scale.

Use all elements in active view to get all schedule elements if not already doing so, this is necessary to get element ids vs using sheet numbers.

Use the schedule header parameters to get those elements’ values. You can check the parameter storage types and spectypes to check how the values should be processed. This will likely need Python at minimum.

With these two pretty major changes it will be a lot closer minus the user interface.