/// <summary> /// Load all worksheets from given ExcelFile stream /// </summary> /// <param name="fileStream">FileStream of ExcelFile</param> private void loadWorksheetsFromFile(Stream fileStream) { using (ExcelPackage ep = new ExcelPackage(fileStream)) { ExcelWorksheets sheets = ep.Workbook.Worksheets; string namesStr = string.Join("|", sheets.Select(s => s.Name)); this._referenceRegEx = new Regex(string.Format(@"^'?({0})'?!(?:[A-Z]+(\d+)|(\d+)\:\d+)$", namesStr)); foreach (ExcelWorksheet workSheet in sheets) { loadDataFromWorksheet(workSheet); } } }
public static ExcelWorksheet Dialog(ExcelWorksheets worksheets) { var vm = new SelectWorksheetViewModel(); vm.Worksheets.AddRange(worksheets.Select(x => x.Name)); vm.SelectedWorksheet = vm.Worksheets[0]; var dialog = new SelectWorksheetWindow { Owner = Application.Current.MainWindow, DataContext = vm }; if (dialog.ShowDialog() != true) { return(null); } var index = vm.Worksheets.IndexOf(vm.SelectedWorksheet); return(worksheets[index + 1]); // uses '1' based worksheet numbering for indexer. }
public List <string> GetSheetNames() { List <string> wsNames = worksheets.Select(p => p.Name).ToList(); return(wsNames); }