コード例 #1
0
        private void Window_Loaded(object sender, RoutedEventArgs e)
        {
            calcWB = XlsIOCalcWorkbook.CreateFromXLS(@"..\..\..\CarIns.xls");

            this.calcWB.Engine.LockDependencies = false;
            this.calcWB.CalculateAll();
            this.calcWB.Engine.LockDependencies = true;
        }
コード例 #2
0
        private void Load()
        {
            calcWB = XlsIOCalcWorkbook.CreateFromXLS(@"..\..\..\CarIns.xls");

            this.calcWB.Engine.LockDependencies = false;
            this.calcWB.CalculateAll();
            this.calcWB.Engine.LockDependencies = true;
        }
コード例 #3
0
        /// <summary>
        /// Creates a ExceRWCalcWorkbook object from an XLS file.
        /// </summary>
        /// <param name="fileName">Complete pathname of the XLS file.</param>
        /// <returns></returns>
        public static XlsIOCalcWorkbook CreateFromXLS(string fileName)
        {
            IWorkbook wb;

            try
            {
                wb = ExcelUtils.Open(fileName);
                ExcelUtils.ThrowNotSavedOnDestroy = false;
            }
            catch (Exception)
            {
                throw new FileLoadException("XlsIO cannot load the file.", fileName);
            }

            XlsIOCalcSheet[] sheets   = new XlsIOCalcSheet[wb.Worksheets.Count];
            string           nameList = "!";

            for (int i = 0; i < wb.Worksheets.Count; ++i)
            {
                sheets[i]      = new XlsIOCalcSheet(wb.Worksheets[i]);
                sheets[i].Name = wb.Worksheets[i].Name;
                nameList      += sheets[i].Name + "!";
            }

            Hashtable ranges = new Hashtable();

            foreach (IName name in wb.Names)
            {
                if (name.Scope.Length > 0 && nameList.IndexOf("!" + name.Scope + "!") > -1)
                {
                    ranges.Add((name.Scope + "!" + name.Name).ToUpper(), name.Value.Replace("'", ""));
                }
                else
                {
                    ranges.Add(name.Name.ToUpper(), name.Value.Replace("'", ""));
                }

                //{
                //    if (!ranges.ContainsKey(name.Name.ToUpper()))
                //    ranges.Add(name.Name.ToUpper(), name.Value.Replace("'", ""));
                //}
            }

            XlsIOCalcWorkbook cwb = new XlsIOCalcWorkbook(sheets, ranges);

            cwb.excelRWWB = wb;
            return(cwb);
        }