Exemplo n.º 1
0
        /// <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);
                }
            }
        }
Exemplo n.º 2
0
        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.
        }
Exemplo n.º 3
0
        public List <string> GetSheetNames()
        {
            List <string> wsNames = worksheets.Select(p => p.Name).ToList();

            return(wsNames);
        }