Link to home
Start Free TrialLog in
Avatar of Michael Clymer
Michael Clymer

asked on

VB.NET Can't Find SpreadSheetDocument.Creat

Hello,

I am using Visual Studio 2017, programming in VB.NET.
I have a reference in my project to DocumentFormat.OpenXml (SDK2.5, Version 2.5.5631.0, Runtime Version 4.0.30319)

At the start of the module, I have the following:
Imports DocumentFormat.OpenXml
Imports DocumentFormat.OpenXml.Packaging
Imports DocumentFormat.OpenXml.Spreadsheet

My code (plagiarized from Google) is as follows:
 Public Function CreateWorkbook(fileName As String) As SpreadsheetDocument
    Dim spreadSheet As SpreadsheetDocument = Nothing
    Dim sharedStringTablePart As SharedStringTablePart
    Dim workbookStylesPart As WorkbookStylesPart

    Try
      ' Create the Excel workbook
      spreadSheet = New SpreadsheetDocument.Create(fileName, SpreadsheetDocumentType.Workbook, False)

      ' Create the parts and the corresponding objects
      ' Workbook
      spreadSheet.AddWorkbookPart()
      spreadSheet.WorkbookPart.Workbook = New Workbook()
      spreadSheet.WorkbookPart.Workbook.Save()

      ' Shared string table
      sharedStringTablePart = spreadSheet.WorkbookPart.AddNewPart(Of SharedStringTablePart)()
      sharedStringTablePart.SharedStringTable = New SharedStringTable()
      sharedStringTablePart.SharedStringTable.Save()

      ' Sheets collection
      spreadSheet.WorkbookPart.Workbook.Sheets = New DocumentFormat.OpenXml.Spreadsheet.Sheets()
      spreadSheet.WorkbookPart.Workbook.Save()

      ' Stylesheet
      workbookStylesPart = spreadSheet.WorkbookPart.AddNewPart(Of WorkbookStylesPart)()
      workbookStylesPart.Stylesheet = New Stylesheet()
      workbookStylesPart.Stylesheet.Save()
    Catch exception As System.Exception
      'System.Windows.MessageBox.Show(exception.Message, "Excel OpenXML basics", System.Windows.MessageBoxButton.OK, System.Windows.MessageBoxImage.Hand)
    End Try

    Return spreadSheet
  End Function

My problem is with spreadSheet = New SpreadsheetDocument.Create(fileName, SpreadsheetDocumentType.Workbook, False). I have an error that "Type 'SpreadSheetDocument.Create' is not defined." How do I fix this error?

I am an old VBA programmer struggling in VB.NET,  thanks ahead of time, as any help would be much appreciated!
ASKER CERTIFIED SOLUTION
Avatar of Shaun Vermaak
Shaun Vermaak
Flag of Australia image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of Michael Clymer
Michael Clymer

ASKER

Thanks that helped. It led me to see that I needed to add WindowsBase to my references.
Shaun was very speedy with a reply, and I do know that he would have helped me further, but with his suggestion, I discovered what the issue was. I needed to add WindowsBase to my references.