I know this is an old question, but I thought that I would give the full correct answer to what Ant was asking. I came across this question when I was looking for the same answer. It is tested and works.
Let's say for some reason you have a Worksheet object called a sheet:
Worksheet worksheet = ((WorksheetPart)_spreadsheet.WorkbookPart.GetPartById("rId1")).Worksheet;
Now, maybe later in my program I need to get part of the workbook for some reason:
WorkbookPart workbookPart = (WorkbookPart) worksheet.WorksheetPart.GetParentParts().First();
What all!
source share