コード例 #1
0
ファイル: ExcelWorkbook.cs プロジェクト: delormej/trucks
        private void DeleteCellFormula(Cell cell, WorksheetPart wsPart)
        {
            try
            {
                CalculationChainPart calculationChainPart = wbPart.CalculationChainPart;
                CalculationChain     calculationChain     = calculationChainPart.CalculationChain;
                var calculationCells = calculationChain.Elements <CalculationCell>().ToList();

                if (cell.CellFormula != null && cell.CellValue != null)
                {
                    string          cellRef         = cell.CellReference;
                    CalculationCell calculationCell = calculationCells.Where(c => c.CellReference == cellRef).FirstOrDefault();

                    cell.CellFormula.Remove();
                    if (calculationCell != null)
                    {
                        calculationCell.Remove();
                        calculationCells.Remove(calculationCell);
                    }
                    else
                    {
                        System.Console.WriteLine("Unable to delete cell formula, no further details.");
                    }
                }
                if (calculationCells.Count == 0)
                {
                    wbPart.DeletePart(calculationChainPart);
                }
            }
            catch (Exception e)
            {
                throw new ApplicationException("Unable to delete cell formula.", e);
            }
        }
コード例 #2
0
        internal CalculationCell ToCalculationCell()
        {
            CalculationCell cc = new CalculationCell();

            cc.CellReference = SLTool.ToCellReference(this.RowIndex, this.ColumnIndex);
            cc.SheetId       = this.SheetId;
            if (this.InChildChain != null && this.InChildChain.Value)
            {
                cc.InChildChain = this.InChildChain.Value;
            }
            if (this.NewLevel != null && this.NewLevel.Value)
            {
                cc.NewLevel = this.NewLevel.Value;
            }
            if (this.NewThread != null && this.NewThread.Value)
            {
                cc.NewThread = this.NewThread.Value;
            }
            if (this.Array != null && this.Array.Value)
            {
                cc.Array = this.Array.Value;
            }

            return(cc);
        }
コード例 #3
0
        internal CalculationCell ToCalculationCell()
        {
            var cc = new CalculationCell();

            cc.CellReference = SLTool.ToCellReference(RowIndex, ColumnIndex);
            cc.SheetId       = SheetId;
            if ((InChildChain != null) && InChildChain.Value)
            {
                cc.InChildChain = InChildChain.Value;
            }
            if ((NewLevel != null) && NewLevel.Value)
            {
                cc.NewLevel = NewLevel.Value;
            }
            if ((NewThread != null) && NewThread.Value)
            {
                cc.NewThread = NewThread.Value;
            }
            if ((Array != null) && Array.Value)
            {
                cc.Array = Array.Value;
            }

            return(cc);
        }
コード例 #4
0
        internal void FromCalculationCell(CalculationCell cc)
        {
            this.SetAllNull();

            int iRowIndex    = -1;
            int iColumnIndex = -1;

            if (SLTool.FormatCellReferenceToRowColumnIndex(cc.CellReference.Value, out iRowIndex, out iColumnIndex))
            {
                this.RowIndex    = iRowIndex;
                this.ColumnIndex = iColumnIndex;
            }


            this.SheetId = cc.SheetId ?? 0;
            if (cc.InChildChain != null)
            {
                this.InChildChain = cc.InChildChain.Value;
            }
            if (cc.NewLevel != null)
            {
                this.NewLevel = cc.NewLevel.Value;
            }
            if (cc.NewThread != null)
            {
                this.NewThread = cc.NewThread.Value;
            }
            if (cc.Array != null)
            {
                this.Array = cc.Array.Value;
            }
        }
コード例 #5
0
        public static void GenerateCalculationCell(CalculationChain calculationChain, string cellRef, int sheetId)
        {
            CalculationCell calculationCell1 = new CalculationCell()
            {
                CellReference = cellRef, SheetId = sheetId
            };

            calculationChain.Append(calculationCell1);
        }
コード例 #6
0
        //BLP(A2 & " " & B2;C1)
        public static void GenerateCalculationChainPart1Content(CalculationChainPart calculationChainPart, string cellRef, int sheetId)
        {
            CalculationChain calculationChain1 = new CalculationChain();
            CalculationCell  calculationCell1  = new CalculationCell()
            {
                CellReference = cellRef, SheetId = sheetId
            };

            calculationChain1.Append(calculationCell1);

            calculationChainPart.CalculationChain = calculationChain1;
        }
コード例 #7
0
        internal CalculationCell ToCalculationCell()
        {
            CalculationCell cc = new CalculationCell();
            cc.CellReference = SLTool.ToCellReference(this.RowIndex, this.ColumnIndex);
            cc.SheetId = this.SheetId;
            if (this.InChildChain != null && this.InChildChain.Value) cc.InChildChain = this.InChildChain.Value;
            if (this.NewLevel != null && this.NewLevel.Value) cc.NewLevel = this.NewLevel.Value;
            if (this.NewThread != null && this.NewThread.Value) cc.NewThread = this.NewThread.Value;
            if (this.Array != null && this.Array.Value) cc.Array = this.Array.Value;

            return cc;
        }
コード例 #8
0
        public override bool OnCircular(IEnumerator circularCellsData)
        {
            CalculationCell cc  = null;
            ArrayList       cur = new ArrayList();

            while (circularCellsData.MoveNext())
            {
                cc = (CalculationCell)circularCellsData.Current;
                cur.Add(cc.Worksheet.Name + "!" + CellsHelper.CellIndexToName(cc.CellRow, cc.CellColumn));
            }
            circulars.Add(cur);
            return(true);
        }
コード例 #9
0
        internal void FromCalculationCell(CalculationCell cc)
        {
            this.SetAllNull();

            int iRowIndex = -1;
            int iColumnIndex = -1;
            if (SLTool.FormatCellReferenceToRowColumnIndex(cc.CellReference.Value, out iRowIndex, out iColumnIndex))
            {
                this.RowIndex = iRowIndex;
                this.ColumnIndex = iColumnIndex;
            }

            this.SheetId = cc.SheetId ?? 0;
            if (cc.InChildChain != null) this.InChildChain = cc.InChildChain.Value;
            if (cc.NewLevel != null) this.NewLevel = cc.NewLevel.Value;
            if (cc.NewThread != null) this.NewThread = cc.NewThread.Value;
            if (cc.Array != null) this.Array = cc.Array.Value;
        }
コード例 #10
0
        // Generates content of calculationChainPart1.
        private void GenerateCalculationChainPart1Content(CalculationChainPart calculationChainPart1)
        {
            CalculationChain calculationChain1 = new CalculationChain();
            CalculationCell calculationCell1 = new CalculationCell() { CellReference = "J42", SheetId = 1 };
            CalculationCell calculationCell2 = new CalculationCell() { CellReference = "J37" };
            CalculationCell calculationCell3 = new CalculationCell() { CellReference = "J34" };
            CalculationCell calculationCell4 = new CalculationCell() { CellReference = "J32" };
            CalculationCell calculationCell5 = new CalculationCell() { CellReference = "H27" };
            CalculationCell calculationCell6 = new CalculationCell() { CellReference = "G27" };
            CalculationCell calculationCell7 = new CalculationCell() { CellReference = "F27" };
            CalculationCell calculationCell8 = new CalculationCell() { CellReference = "E27" };
            CalculationCell calculationCell9 = new CalculationCell() { CellReference = "D27" };
            CalculationCell calculationCell10 = new CalculationCell() { CellReference = "C27" };
            CalculationCell calculationCell11 = new CalculationCell() { CellReference = "B27" };
            CalculationCell calculationCell12 = new CalculationCell() { CellReference = "J27", InChildChain = true };
            CalculationCell calculationCell13 = new CalculationCell() { CellReference = "H22" };
            CalculationCell calculationCell14 = new CalculationCell() { CellReference = "G22" };
            CalculationCell calculationCell15 = new CalculationCell() { CellReference = "F22" };
            CalculationCell calculationCell16 = new CalculationCell() { CellReference = "E22" };
            CalculationCell calculationCell17 = new CalculationCell() { CellReference = "D22" };
            CalculationCell calculationCell18 = new CalculationCell() { CellReference = "C22" };
            CalculationCell calculationCell19 = new CalculationCell() { CellReference = "B22" };
            CalculationCell calculationCell20 = new CalculationCell() { CellReference = "J22", InChildChain = true };
            CalculationCell calculationCell21 = new CalculationCell() { CellReference = "H47", InChildChain = true };
            CalculationCell calculationCell22 = new CalculationCell() { CellReference = "H49", InChildChain = true };
            CalculationCell calculationCell23 = new CalculationCell() { CellReference = "H50", InChildChain = true };
            CalculationCell calculationCell24 = new CalculationCell() { CellReference = "H51", InChildChain = true };

            calculationChain1.Append(calculationCell1);
            calculationChain1.Append(calculationCell2);
            calculationChain1.Append(calculationCell3);
            calculationChain1.Append(calculationCell4);
            calculationChain1.Append(calculationCell5);
            calculationChain1.Append(calculationCell6);
            calculationChain1.Append(calculationCell7);
            calculationChain1.Append(calculationCell8);
            calculationChain1.Append(calculationCell9);
            calculationChain1.Append(calculationCell10);
            calculationChain1.Append(calculationCell11);
            calculationChain1.Append(calculationCell12);
            calculationChain1.Append(calculationCell13);
            calculationChain1.Append(calculationCell14);
            calculationChain1.Append(calculationCell15);
            calculationChain1.Append(calculationCell16);
            calculationChain1.Append(calculationCell17);
            calculationChain1.Append(calculationCell18);
            calculationChain1.Append(calculationCell19);
            calculationChain1.Append(calculationCell20);
            calculationChain1.Append(calculationCell21);
            calculationChain1.Append(calculationCell22);
            calculationChain1.Append(calculationCell23);
            calculationChain1.Append(calculationCell24);

            calculationChainPart1.CalculationChain = calculationChain1;
        }
コード例 #11
0
        // Generates content of calculationChainPart1.
        private void GenerateCalculationChainPart1Content(CalculationChainPart calculationChainPart1)
        {
            CalculationChain calculationChain1 = new CalculationChain();
            CalculationCell calculationCell1 = new CalculationCell() { CellReference = "A6", SheetId = 1, NewLevel = true };

            calculationChain1.Append(calculationCell1);

            calculationChainPart1.CalculationChain = calculationChain1;
        }
コード例 #12
0
        // Generates content of calculationChainPart1.
        private void GenerateCalculationChainPart1Content(CalculationChainPart calculationChainPart1)
        {
            CalculationChain calculationChain1 = new CalculationChain();
            CalculationCell calculationCell1 = new CalculationCell() { CellReference = "AG21", SheetId = 1 };
            CalculationCell calculationCell2 = new CalculationCell() { CellReference = "AG23", InChildChain = true };
            CalculationCell calculationCell3 = new CalculationCell() { CellReference = "AF21" };
            CalculationCell calculationCell4 = new CalculationCell() { CellReference = "AF23", InChildChain = true };
            CalculationCell calculationCell5 = new CalculationCell() { CellReference = "AI21" };
            CalculationCell calculationCell6 = new CalculationCell() { CellReference = "AJ21" };
            CalculationCell calculationCell7 = new CalculationCell() { CellReference = "AH20" };
            CalculationCell calculationCell8 = new CalculationCell() { CellReference = "AH21", InChildChain = true };
            CalculationCell calculationCell9 = new CalculationCell() { CellReference = "AH23", InChildChain = true };
            CalculationCell calculationCell10 = new CalculationCell() { CellReference = "AJ23" };
            CalculationCell calculationCell11 = new CalculationCell() { CellReference = "C21" };
            CalculationCell calculationCell12 = new CalculationCell() { CellReference = "C23", InChildChain = true };
            CalculationCell calculationCell13 = new CalculationCell() { CellReference = "D21" };
            CalculationCell calculationCell14 = new CalculationCell() { CellReference = "D23", InChildChain = true };
            CalculationCell calculationCell15 = new CalculationCell() { CellReference = "E21" };
            CalculationCell calculationCell16 = new CalculationCell() { CellReference = "E23", InChildChain = true };
            CalculationCell calculationCell17 = new CalculationCell() { CellReference = "F21" };
            CalculationCell calculationCell18 = new CalculationCell() { CellReference = "F23", InChildChain = true };
            CalculationCell calculationCell19 = new CalculationCell() { CellReference = "G21" };
            CalculationCell calculationCell20 = new CalculationCell() { CellReference = "G23", InChildChain = true };
            CalculationCell calculationCell21 = new CalculationCell() { CellReference = "H21" };
            CalculationCell calculationCell22 = new CalculationCell() { CellReference = "H23", InChildChain = true };
            CalculationCell calculationCell23 = new CalculationCell() { CellReference = "I21" };
            CalculationCell calculationCell24 = new CalculationCell() { CellReference = "I23", InChildChain = true };
            CalculationCell calculationCell25 = new CalculationCell() { CellReference = "J21" };
            CalculationCell calculationCell26 = new CalculationCell() { CellReference = "J23", InChildChain = true };
            CalculationCell calculationCell27 = new CalculationCell() { CellReference = "K21" };
            CalculationCell calculationCell28 = new CalculationCell() { CellReference = "K23", InChildChain = true };
            CalculationCell calculationCell29 = new CalculationCell() { CellReference = "L21" };
            CalculationCell calculationCell30 = new CalculationCell() { CellReference = "L23", InChildChain = true };
            CalculationCell calculationCell31 = new CalculationCell() { CellReference = "M21" };
            CalculationCell calculationCell32 = new CalculationCell() { CellReference = "M23", InChildChain = true };
            CalculationCell calculationCell33 = new CalculationCell() { CellReference = "N21" };
            CalculationCell calculationCell34 = new CalculationCell() { CellReference = "N23", InChildChain = true };
            CalculationCell calculationCell35 = new CalculationCell() { CellReference = "O21" };
            CalculationCell calculationCell36 = new CalculationCell() { CellReference = "O23", InChildChain = true };
            CalculationCell calculationCell37 = new CalculationCell() { CellReference = "P21" };
            CalculationCell calculationCell38 = new CalculationCell() { CellReference = "P23", InChildChain = true };
            CalculationCell calculationCell39 = new CalculationCell() { CellReference = "Q21" };
            CalculationCell calculationCell40 = new CalculationCell() { CellReference = "Q23", InChildChain = true };
            CalculationCell calculationCell41 = new CalculationCell() { CellReference = "R21" };
            CalculationCell calculationCell42 = new CalculationCell() { CellReference = "R23", InChildChain = true };
            CalculationCell calculationCell43 = new CalculationCell() { CellReference = "S21" };
            CalculationCell calculationCell44 = new CalculationCell() { CellReference = "S23", InChildChain = true };
            CalculationCell calculationCell45 = new CalculationCell() { CellReference = "T21" };
            CalculationCell calculationCell46 = new CalculationCell() { CellReference = "T23", InChildChain = true };
            CalculationCell calculationCell47 = new CalculationCell() { CellReference = "U21" };
            CalculationCell calculationCell48 = new CalculationCell() { CellReference = "U23", InChildChain = true };
            CalculationCell calculationCell49 = new CalculationCell() { CellReference = "V21" };
            CalculationCell calculationCell50 = new CalculationCell() { CellReference = "V23", InChildChain = true };
            CalculationCell calculationCell51 = new CalculationCell() { CellReference = "W21" };
            CalculationCell calculationCell52 = new CalculationCell() { CellReference = "W23", InChildChain = true };
            CalculationCell calculationCell53 = new CalculationCell() { CellReference = "X21" };
            CalculationCell calculationCell54 = new CalculationCell() { CellReference = "X23", InChildChain = true };
            CalculationCell calculationCell55 = new CalculationCell() { CellReference = "Y21" };
            CalculationCell calculationCell56 = new CalculationCell() { CellReference = "Y23", InChildChain = true };
            CalculationCell calculationCell57 = new CalculationCell() { CellReference = "Z21" };
            CalculationCell calculationCell58 = new CalculationCell() { CellReference = "Z23", InChildChain = true };
            CalculationCell calculationCell59 = new CalculationCell() { CellReference = "AA21" };
            CalculationCell calculationCell60 = new CalculationCell() { CellReference = "AA23", InChildChain = true };
            CalculationCell calculationCell61 = new CalculationCell() { CellReference = "AB21" };
            CalculationCell calculationCell62 = new CalculationCell() { CellReference = "AB23", InChildChain = true };
            CalculationCell calculationCell63 = new CalculationCell() { CellReference = "AC21" };
            CalculationCell calculationCell64 = new CalculationCell() { CellReference = "AC23", InChildChain = true };
            CalculationCell calculationCell65 = new CalculationCell() { CellReference = "AD21" };
            CalculationCell calculationCell66 = new CalculationCell() { CellReference = "AD23", InChildChain = true };
            CalculationCell calculationCell67 = new CalculationCell() { CellReference = "AE21" };
            CalculationCell calculationCell68 = new CalculationCell() { CellReference = "AE23", InChildChain = true };
            CalculationCell calculationCell69 = new CalculationCell() { CellReference = "AK20", NewLevel = true };
            CalculationCell calculationCell70 = new CalculationCell() { CellReference = "AK21", InChildChain = true };

            calculationChain1.Append(calculationCell1);
            calculationChain1.Append(calculationCell2);
            calculationChain1.Append(calculationCell3);
            calculationChain1.Append(calculationCell4);
            calculationChain1.Append(calculationCell5);
            calculationChain1.Append(calculationCell6);
            calculationChain1.Append(calculationCell7);
            calculationChain1.Append(calculationCell8);
            calculationChain1.Append(calculationCell9);
            calculationChain1.Append(calculationCell10);
            calculationChain1.Append(calculationCell11);
            calculationChain1.Append(calculationCell12);
            calculationChain1.Append(calculationCell13);
            calculationChain1.Append(calculationCell14);
            calculationChain1.Append(calculationCell15);
            calculationChain1.Append(calculationCell16);
            calculationChain1.Append(calculationCell17);
            calculationChain1.Append(calculationCell18);
            calculationChain1.Append(calculationCell19);
            calculationChain1.Append(calculationCell20);
            calculationChain1.Append(calculationCell21);
            calculationChain1.Append(calculationCell22);
            calculationChain1.Append(calculationCell23);
            calculationChain1.Append(calculationCell24);
            calculationChain1.Append(calculationCell25);
            calculationChain1.Append(calculationCell26);
            calculationChain1.Append(calculationCell27);
            calculationChain1.Append(calculationCell28);
            calculationChain1.Append(calculationCell29);
            calculationChain1.Append(calculationCell30);
            calculationChain1.Append(calculationCell31);
            calculationChain1.Append(calculationCell32);
            calculationChain1.Append(calculationCell33);
            calculationChain1.Append(calculationCell34);
            calculationChain1.Append(calculationCell35);
            calculationChain1.Append(calculationCell36);
            calculationChain1.Append(calculationCell37);
            calculationChain1.Append(calculationCell38);
            calculationChain1.Append(calculationCell39);
            calculationChain1.Append(calculationCell40);
            calculationChain1.Append(calculationCell41);
            calculationChain1.Append(calculationCell42);
            calculationChain1.Append(calculationCell43);
            calculationChain1.Append(calculationCell44);
            calculationChain1.Append(calculationCell45);
            calculationChain1.Append(calculationCell46);
            calculationChain1.Append(calculationCell47);
            calculationChain1.Append(calculationCell48);
            calculationChain1.Append(calculationCell49);
            calculationChain1.Append(calculationCell50);
            calculationChain1.Append(calculationCell51);
            calculationChain1.Append(calculationCell52);
            calculationChain1.Append(calculationCell53);
            calculationChain1.Append(calculationCell54);
            calculationChain1.Append(calculationCell55);
            calculationChain1.Append(calculationCell56);
            calculationChain1.Append(calculationCell57);
            calculationChain1.Append(calculationCell58);
            calculationChain1.Append(calculationCell59);
            calculationChain1.Append(calculationCell60);
            calculationChain1.Append(calculationCell61);
            calculationChain1.Append(calculationCell62);
            calculationChain1.Append(calculationCell63);
            calculationChain1.Append(calculationCell64);
            calculationChain1.Append(calculationCell65);
            calculationChain1.Append(calculationCell66);
            calculationChain1.Append(calculationCell67);
            calculationChain1.Append(calculationCell68);
            calculationChain1.Append(calculationCell69);
            calculationChain1.Append(calculationCell70);

            calculationChainPart1.CalculationChain = calculationChain1;
        }
コード例 #13
0
        private void GenerateCalculationChainPartContent(WorkbookPart workbookPart, SaveContext context)
        {
            var thisRelId = context.RelIdGenerator.GetNext(RelType.Workbook);
            if (workbookPart.CalculationChainPart == null)
                workbookPart.AddNewPart<CalculationChainPart>(thisRelId);

            if (workbookPart.CalculationChainPart.CalculationChain == null)
                workbookPart.CalculationChainPart.CalculationChain = new CalculationChain();

            var calculationChain = workbookPart.CalculationChainPart.CalculationChain;
            calculationChain.RemoveAllChildren<CalculationCell>();

            foreach (var worksheet in WorksheetsInternal)
            {
                var cellsWithoutFormulas = new HashSet<String>();
                foreach (var c in worksheet.Internals.CellsCollection.GetCells())
                {
                    if (XLHelper.IsNullOrWhiteSpace(c.FormulaA1))
                        cellsWithoutFormulas.Add(c.Address.ToStringRelative());
                    else
                    {
                        if (c.FormulaA1.StartsWith("{"))
                        {
                            var cc = new CalculationCell
                            {
                                CellReference = c.Address.ToString(),
                                SheetId = worksheet.SheetId
                            };

                            if (c.FormulaReference.FirstAddress.Equals(c.Address))
                            {
                                cc.Array = true;
                                calculationChain.AppendChild(cc);
                                calculationChain.AppendChild(new CalculationCell {CellReference = c.Address.ToString(), InChildChain = true});
                            }
                            else
                            {
                                calculationChain.AppendChild(cc);
                            }
                        }
                        else
                        {
                            calculationChain.AppendChild(new CalculationCell
                            {
                                CellReference = c.Address.ToString(),
                                SheetId = worksheet.SheetId
                            });
                        }
                    }
                }

                //var cCellsToRemove = new List<CalculationCell>();
                var m = from cc in calculationChain.Elements<CalculationCell>()
                    where !(cc.SheetId != null || cc.InChildChain != null)
                          && calculationChain.Elements<CalculationCell>()
                              .Where(c1 => c1.SheetId != null)
                              .Select(c1 => c1.CellReference.Value)
                              .Contains(cc.CellReference.Value)
                          || cellsWithoutFormulas.Contains(cc.CellReference.Value)
                    select cc;
                //m.ToList().ForEach(cc => cCellsToRemove.Add(cc));
                m.ToList().ForEach(cc => calculationChain.RemoveChild(cc));
            }

            if (!calculationChain.Any())
                workbookPart.DeletePart(workbookPart.CalculationChainPart);
        }
コード例 #14
0
        public static void bloom(string col, int li, string formule)
        {
            //Copie du template et ouverture du fichier
            System.IO.File.Copy("TemplateBloom.xlsx", "BloomGenerated.xlsx", true);
            SpreadsheetDocument myWorkbook = SpreadsheetDocument.Open("BloomGenerated.xlsx", true);


            //myWorkbook.WorkbookPart.Workbook.NamespaceDeclarations

            //myWorkbook.WorkbookPart.Workbook.CalculationProperties.ForceFullCalculation = true;
            //myWorkbook.WorkbookPart.Workbook.CalculationProperties.FullCalculationOnLoad = true;

            //Access the main Workbook part, which contains all references.
            WorkbookPart workbookPart = myWorkbook.WorkbookPart;


            WorksheetPart worksheetPart = workbookPart.WorksheetParts.ElementAt <WorksheetPart>(2);
            SheetData     sheetData     = worksheetPart.Worksheet.GetFirstChild <SheetData>();


            sheetData.RemoveNamespaceDeclaration("x");

            //CalculationChainPart calculationChainPart1 = workbookPart.AddNewPart<CalculationChainPart>("rId7");
            //GenerateCalculationChainPart1Content(calculationChainPart1,"C2",1);

            CalculationChain CC = workbookPart.GetPartsOfType <CalculationChainPart>().First().CalculationChain;

            CalculationCell calculationCell = new CalculationCell()
            {
                CellReference = col + li
            };

            CC.Append(calculationCell);

            //GenerateCalculationCell(CC, "C3", 1);



            Row  r    = (Row)sheetData.ChildElements.GetItem(2);
            Cell cell = GenerateCell(col + li, formule);

            //Cell cell = (Cell) r.ChildElements.GetItem(2);
            //cell.DataType = CellValues.Error;
            //cell.CellValue.Text="#NAME?";
            //cell.CellFormula.Text = formule;

            r.RemoveNamespaceDeclaration("x");
            cell.RemoveNamespaceDeclaration("x");

            r.AppendChild(cell);



            CalculationChainPart ccp = workbookPart.CalculationChainPart;

            workbookPart.DeletePart(ccp);



            myWorkbook.WorkbookPart.Workbook.Save();
            myWorkbook.Close();
        }
コード例 #15
0
        // Generates content of calculationChainPart1.
        private void GenerateCalculationChainPart1Content(CalculationChainPart calculationChainPart1)
        {
            CalculationChain calculationChain1 = new CalculationChain();
            CalculationCell calculationCell1 = new CalculationCell() { CellReference = "G20", SheetId = 2 };
            CalculationCell calculationCell2 = new CalculationCell() { CellReference = "G21" };

            calculationChain1.Append(calculationCell1);
            calculationChain1.Append(calculationCell2);

            calculationChainPart1.CalculationChain = calculationChain1;
        }
コード例 #16
0
        internal void ReplaceFormulaWithValue(string sheetName)
        {
            var           formulaDict      = new Dictionary <string, string>();
            StringBuilder logStringBuilder = new StringBuilder();

            var worksheetPart = GetWorksheetPartByName(_spreadSheet, sheetName);

            _worksheetPart = worksheetPart;

            CalculationChainPart calculationChainPart = _spreadSheet.WorkbookPart.CalculationChainPart;

            if (calculationChainPart == null)
            {
                return;
            }

            CalculationChain calculationChain = calculationChainPart.CalculationChain;
            var calculationCells = calculationChain.Elements <CalculationCell>().ToList();

            foreach (Row row in worksheetPart.Worksheet.GetFirstChild <SheetData>().Elements <Row>())
            {
                foreach (Cell cell in row.Elements <Cell>())
                {
                    if (cell.CellValue != null)
                    {
                        Console.WriteLine(cell.CellReference);
                    }
                    if (cell.CellFormula != null &&
                        cell.CellValue != null)
                    {
                        string cellRef = cell.CellReference;
                        string formula = cell.CellFormula.InnerText;

                        if (!string.IsNullOrEmpty(cell.CellFormula.SharedIndex))
                        {
                            if (!formulaDict.ContainsKey(cell.CellFormula.SharedIndex.InnerText))
                            {
                                formulaDict.Add(cell.CellFormula.SharedIndex.InnerText, cell.CellFormula.InnerText);
                            }
                        }
                        //
                        if (formula == "" && cell.CellFormula.SharedIndex != null)
                        {
                            string tmp;
                            if (formulaDict.TryGetValue(cell.CellFormula.SharedIndex.InnerText, out tmp))
                            {
                                formula = "Shared " + tmp;
                            }
                        }

                        CalculationCell calculationCell =
                            calculationCells.Where(c => c.CellReference == cellRef).FirstOrDefault();
                        //CalculationCell calculationCell = calculationChain.Elements<CalculationCell>().Where(c => c.CellReference == cell.CellReference).FirstOrDefault();

                        string value = cell.CellValue.InnerText;
                        UpdateCell(cell, DataTypes.String, value);

                        cell.CellFormula.Remove();
                        calculationCell.Remove();
                        //Try
                        calculationCells.Remove(calculationCell);
                        //Log
                        if (Log)
                        {
                            string log = string.Format("Cell: {0} | Sheet: {1} | Formula: {2} | Value: {3}", cellRef,
                                                       sheetName, formula, value);
                            logStringBuilder.Append(log);
                            logStringBuilder.Append(Environment.NewLine);
                        }
                    }
                    if (calculationCells.Count == 0)
                    {
                        //delete calcCalutions.xml
                        _spreadSheet.WorkbookPart.DeletePart(calculationChainPart);
                    }
                }
            }
            //Log
            if (Log)
            {
                File.AppendAllText("Log.log", logStringBuilder.ToString());
            }
            //SaveChanges();
        }
コード例 #17
0
        // Generates content of calculationChainPart1.
        private void GenerateCalculationChainPart1Content(CalculationChainPart calculationChainPart1)
        {
            CalculationChain calculationChain1 = new CalculationChain();
            CalculationCell calculationCell1 = new CalculationCell() { CellReference = "AN29", SheetId = 26 };
            CalculationCell calculationCell2 = new CalculationCell() { CellReference = "AN26" };
            CalculationCell calculationCell3 = new CalculationCell() { CellReference = "AM26" };
            CalculationCell calculationCell4 = new CalculationCell() { CellReference = "G40" };
            CalculationCell calculationCell5 = new CalculationCell() { CellReference = "AF26" };
            CalculationCell calculationCell6 = new CalculationCell() { CellReference = "AL25" };
            CalculationCell calculationCell7 = new CalculationCell() { CellReference = "AL24" };
            CalculationCell calculationCell8 = new CalculationCell() { CellReference = "AL23" };
            CalculationCell calculationCell9 = new CalculationCell() { CellReference = "AL22" };
            CalculationCell calculationCell10 = new CalculationCell() { CellReference = "AL21" };
            CalculationCell calculationCell11 = new CalculationCell() { CellReference = "G39" };
            CalculationCell calculationCell12 = new CalculationCell() { CellReference = "G38" };
            CalculationCell calculationCell13 = new CalculationCell() { CellReference = "G37" };
            CalculationCell calculationCell14 = new CalculationCell() { CellReference = "G36" };
            CalculationCell calculationCell15 = new CalculationCell() { CellReference = "G35" };
            CalculationCell calculationCell16 = new CalculationCell() { CellReference = "AN25" };
            CalculationCell calculationCell17 = new CalculationCell() { CellReference = "AN24" };
            CalculationCell calculationCell18 = new CalculationCell() { CellReference = "AN23" };
            CalculationCell calculationCell19 = new CalculationCell() { CellReference = "G18" };
            CalculationCell calculationCell20 = new CalculationCell() { CellReference = "AN22" };
            CalculationCell calculationCell21 = new CalculationCell() { CellReference = "G26" };
            CalculationCell calculationCell22 = new CalculationCell() { CellReference = "H26" };
            CalculationCell calculationCell23 = new CalculationCell() { CellReference = "I26" };
            CalculationCell calculationCell24 = new CalculationCell() { CellReference = "J26" };
            CalculationCell calculationCell25 = new CalculationCell() { CellReference = "K26" };
            CalculationCell calculationCell26 = new CalculationCell() { CellReference = "L26" };
            CalculationCell calculationCell27 = new CalculationCell() { CellReference = "M26" };
            CalculationCell calculationCell28 = new CalculationCell() { CellReference = "N26" };
            CalculationCell calculationCell29 = new CalculationCell() { CellReference = "O26" };
            CalculationCell calculationCell30 = new CalculationCell() { CellReference = "P26" };
            CalculationCell calculationCell31 = new CalculationCell() { CellReference = "Q26" };
            CalculationCell calculationCell32 = new CalculationCell() { CellReference = "R26" };
            CalculationCell calculationCell33 = new CalculationCell() { CellReference = "S26" };
            CalculationCell calculationCell34 = new CalculationCell() { CellReference = "T26" };
            CalculationCell calculationCell35 = new CalculationCell() { CellReference = "U26" };
            CalculationCell calculationCell36 = new CalculationCell() { CellReference = "V26" };
            CalculationCell calculationCell37 = new CalculationCell() { CellReference = "W26" };
            CalculationCell calculationCell38 = new CalculationCell() { CellReference = "X26" };
            CalculationCell calculationCell39 = new CalculationCell() { CellReference = "Y26" };
            CalculationCell calculationCell40 = new CalculationCell() { CellReference = "Z26" };
            CalculationCell calculationCell41 = new CalculationCell() { CellReference = "AA26" };
            CalculationCell calculationCell42 = new CalculationCell() { CellReference = "AB26" };
            CalculationCell calculationCell43 = new CalculationCell() { CellReference = "AC26" };
            CalculationCell calculationCell44 = new CalculationCell() { CellReference = "AD26" };
            CalculationCell calculationCell45 = new CalculationCell() { CellReference = "AE26" };
            CalculationCell calculationCell46 = new CalculationCell() { CellReference = "AG26" };
            CalculationCell calculationCell47 = new CalculationCell() { CellReference = "AH26" };
            CalculationCell calculationCell48 = new CalculationCell() { CellReference = "AI26" };
            CalculationCell calculationCell49 = new CalculationCell() { CellReference = "AJ26" };
            CalculationCell calculationCell50 = new CalculationCell() { CellReference = "AK26" };
            CalculationCell calculationCell51 = new CalculationCell() { CellReference = "AL26", NewLevel = true };
            CalculationCell calculationCell52 = new CalculationCell() { CellReference = "AN21" };
            CalculationCell calculationCell53 = new CalculationCell() { CellReference = "AN30", InChildChain = true };
            CalculationCell calculationCell54 = new CalculationCell() { CellReference = "AN31", InChildChain = true };
            CalculationCell calculationCell55 = new CalculationCell() { CellReference = "AN32", NewLevel = true };
            CalculationCell calculationCell56 = new CalculationCell() { CellReference = "AN33" };

            calculationChain1.Append(calculationCell1);
            calculationChain1.Append(calculationCell2);
            calculationChain1.Append(calculationCell3);
            calculationChain1.Append(calculationCell4);
            calculationChain1.Append(calculationCell5);
            calculationChain1.Append(calculationCell6);
            calculationChain1.Append(calculationCell7);
            calculationChain1.Append(calculationCell8);
            calculationChain1.Append(calculationCell9);
            calculationChain1.Append(calculationCell10);
            calculationChain1.Append(calculationCell11);
            calculationChain1.Append(calculationCell12);
            calculationChain1.Append(calculationCell13);
            calculationChain1.Append(calculationCell14);
            calculationChain1.Append(calculationCell15);
            calculationChain1.Append(calculationCell16);
            calculationChain1.Append(calculationCell17);
            calculationChain1.Append(calculationCell18);
            calculationChain1.Append(calculationCell19);
            calculationChain1.Append(calculationCell20);
            calculationChain1.Append(calculationCell21);
            calculationChain1.Append(calculationCell22);
            calculationChain1.Append(calculationCell23);
            calculationChain1.Append(calculationCell24);
            calculationChain1.Append(calculationCell25);
            calculationChain1.Append(calculationCell26);
            calculationChain1.Append(calculationCell27);
            calculationChain1.Append(calculationCell28);
            calculationChain1.Append(calculationCell29);
            calculationChain1.Append(calculationCell30);
            calculationChain1.Append(calculationCell31);
            calculationChain1.Append(calculationCell32);
            calculationChain1.Append(calculationCell33);
            calculationChain1.Append(calculationCell34);
            calculationChain1.Append(calculationCell35);
            calculationChain1.Append(calculationCell36);
            calculationChain1.Append(calculationCell37);
            calculationChain1.Append(calculationCell38);
            calculationChain1.Append(calculationCell39);
            calculationChain1.Append(calculationCell40);
            calculationChain1.Append(calculationCell41);
            calculationChain1.Append(calculationCell42);
            calculationChain1.Append(calculationCell43);
            calculationChain1.Append(calculationCell44);
            calculationChain1.Append(calculationCell45);
            calculationChain1.Append(calculationCell46);
            calculationChain1.Append(calculationCell47);
            calculationChain1.Append(calculationCell48);
            calculationChain1.Append(calculationCell49);
            calculationChain1.Append(calculationCell50);
            calculationChain1.Append(calculationCell51);
            calculationChain1.Append(calculationCell52);
            calculationChain1.Append(calculationCell53);
            calculationChain1.Append(calculationCell54);
            calculationChain1.Append(calculationCell55);
            calculationChain1.Append(calculationCell56);

            calculationChainPart1.CalculationChain = calculationChain1;
        }
コード例 #18
0
        public bool InsertFormulaChain(string formula, string fromCell, string toCell, WorksheetPart wsPart = null, bool force = false)
        {
            if (this.workbook == null || this.workbook.Workbook == null)
            {
                Console.WriteLine("Error: This spreadsheet has no workbook!");
                return(false);
            }
            if (wsPart == null)
            {
                if (force == true)
                {
                    if (this.workbook.GetPartsOfType <WorksheetPart>().Count() <= 0)
                    {
                        Console.WriteLine("Error: This spreadsheet has no sheets");
                    }
                    else
                    {
                        wsPart = this.workbook.GetPartsOfType <WorksheetPart>().FirstOrDefault();
                        if (wsPart == null)
                        {
                            Console.WriteLine("Error: Internal error while getting sheet!");
                            return(false);
                        }
                    }
                }
                else
                {
                    Console.WriteLine("Error: This speardsheet has no according worksheet.");
                    return(false);
                }
            }

            if (this.calcChain == null)
            {
                Console.WriteLine("InsertFormulaChain [WARNING]: This spreadsheet does not have calcChainPart, auto create new one!");
                this.calcChain = this.workbook.AddNewPart <CalculationChainPart>();
                this.calcChain.CalculationChain = new CalculationChain();
            }

            string fromCol, toCol, tmpFromRow, tmpToRow;
            uint   fromRow, toRow;

            fromCol = this.GetPartFromAddress(fromCell, false);
            if (fromCol == null)
            {
                Console.WriteLine("InsertFormulaChain [ERROR]: Invalid fromCell, got {0}", fromCell);
                return(false);
            }
            toCol = this.GetPartFromAddress(toCell, false);
            if (toCol == null)
            {
                Console.WriteLine("InsertFormulaChain [ERROR]: Invalid fromCell, got {0}", toCell);
                return(false);
            }

            if (!fromCol.Equals(toCol))
            {
                Console.WriteLine("InsertFormulaChain [ERROR]: Cannot add calcChain in different column, got {0}, {1}", fromCell, toCell);
                return(false);
            }

            tmpFromRow = this.GetPartFromAddress(fromCell, true);


            if (tmpFromRow == null)
            {
                Console.WriteLine("InsertFormulaChain [ERROR]: Invalid fromCell, got {0}", fromCell);
                return(false);
            }
            tmpToRow = this.GetPartFromAddress(toCell, true);
            if (tmpToRow == null)
            {
                Console.WriteLine("InsertFormulaChain [ERROR]: Invalid fromCell, got {0}", toCell);
                return(false);
            }

            fromRow = uint.Parse(tmpFromRow);
            toRow   = uint.Parse(tmpToRow);

            //  Get the corresponding sheet:
            string wsPartID = this.workbook.GetIdOfPart(wsPart);

            if (wsPartID == null)
            {
                Console.WriteLine("InsertFormulaChain [ERROR]: Internal error!");
                return(false);
            }
            Sheets sheets = this.workbook.Workbook.GetFirstChild <Sheets>();

            Sheet correspondingSheet = sheets.Elements <Sheet>()
                                       .Where(e => string.Compare(e.Id, wsPartID, true) == 0).FirstOrDefault();

            if (correspondingSheet == null)
            {
                Console.WriteLine("InsertFormulaChain [ERROR]: Internal error!");
                return(false);
            }

            int  sheetID;
            bool res = int.TryParse(correspondingSheet.SheetId.ToString(), out sheetID);

            if (res == false)
            {
                Console.WriteLine("InsertFormulaChain [ERROR]: Internal error!");
                return(false);
            }

            Cell baseCell = this.InsertCellInWorksheet(fromCol, fromRow, wsPart);

            if (baseCell == null)
            {
                Console.WriteLine("InsertFormulaChain [ERROR]: Cannot insert cell at {0}!", fromCell);
                return(false);
            }
            string baseCellRef = fromCell + ":" + toCell;
            uint   baseCellSi  = 0;
            IEnumerable <CellFormula> listFomula = wsPart.Worksheet.Descendants <CellFormula>()
                                                   .Where(f => {
                if (f.FormulaType != null)
                {
                    return(f.FormulaType == CellFormulaValues.Shared);
                }
                return(false);
            });

            if (listFomula.Count() > 0)
            {
                baseCellSi = listFomula.Select(f => uint.Parse(f.SharedIndex.ToString())).Max() + 1;
            }

            baseCell.CellFormula = new CellFormula(formula)
            {
                FormulaType = new EnumValue <CellFormulaValues>(CellFormulaValues.Shared),
                Reference   = baseCellRef, SharedIndex = baseCellSi
            };
            baseCell.CellValue = new CellValue("0");

            CalculationCell baseCellCal;

            baseCellCal = this.calcChain.CalculationChain.Elements <CalculationCell>()
                          .Where(c => c.CellReference == baseCell.CellReference && c.SheetId == sheetID)
                          .FirstOrDefault();
            if (baseCellCal == null)
            {
                baseCellCal = new CalculationCell()
                {
                    CellReference = baseCell.CellReference, SheetId = sheetID
                };
                this.calcChain.CalculationChain.Append(baseCellCal);
            }

            bool trailAddRet = true;

            for (uint i = fromRow + 1; i <= toRow; i++)
            {
                Cell trailCell = this.InsertCellInWorksheet(fromCol, i, wsPart);
                if (trailCell != null)
                {
                    trailCell.CellFormula = new CellFormula()
                    {
                        FormulaType = new EnumValue <CellFormulaValues>(CellFormulaValues.Shared),
                        SharedIndex = baseCellSi
                    };
                    trailCell.CellValue = new CellValue("0");
                    CalculationCell trailCellCal;
                    trailCellCal = this.calcChain.CalculationChain.Elements <CalculationCell>()
                                   .Where(c => c.CellReference == trailCell.CellReference && c.SheetId == sheetID)
                                   .FirstOrDefault();
                    if (trailCellCal == null)
                    {
                        trailCellCal = new CalculationCell()
                        {
                            CellReference = trailCell.CellReference, SheetId = sheetID
                        };
                        this.calcChain.CalculationChain.Append(trailCellCal);
                    }
                    else
                    {
                        if (trailCellCal.NewLevel != null)
                        {
                            trailCellCal.NewLevel = null;
                        }
                    }
                }
                else
                {
                    Console.WriteLine("InsertFormularChain [WARNING]: Cannot add formula at trailing cell {0}", fromCol + i);
                    trailAddRet = false;
                }
            }
            this.workbook.Workbook.CalculationProperties.ForceFullCalculation  = true;
            this.workbook.Workbook.CalculationProperties.FullCalculationOnLoad = true;
            this.workbook.Workbook.Save();
            return(trailAddRet);
        }
コード例 #19
0
        public Cell InsertFormula(string formula, string columnName, uint rowIndex, WorksheetPart wsPart, bool force = false)
        {
            if (this.workbook == null || this.workbook.Workbook == null)
            {
                Console.WriteLine("Error: This spreadsheet has no workbook!");
                return(null);
            }
            if (wsPart == null)
            {
                if (force == true)
                {
                    if (this.workbook.GetPartsOfType <WorksheetPart>().Count() <= 0)
                    {
                        Console.WriteLine("Error: This spreadsheet has no sheets");
                    }
                    else
                    {
                        wsPart = this.workbook.GetPartsOfType <WorksheetPart>().FirstOrDefault();
                        if (wsPart == null)
                        {
                            Console.WriteLine("Error: Internal error while getting sheet!");
                            return(null);
                        }
                    }
                }
                else
                {
                    Console.WriteLine("Error: This speardsheet has no according worksheet.");
                    return(null);
                }
            }

            if (this.calcChain == null)
            {
                Console.WriteLine("InsertFormula [WARNING]: This spreadsheet does not have calcChainPart, auto create new one!");
                this.calcChain = this.workbook.AddNewPart <CalculationChainPart>();
                this.calcChain.CalculationChain = new CalculationChain();
            }

            Cell cell = this.InsertCellInWorksheet(columnName, rowIndex, wsPart);

            if (cell == null)
            {
                Console.WriteLine("InsertFormula [ERROR]: Cannot insert cell at {0}!", columnName + rowIndex);
                return(null);
            }

            cell.CellFormula = new CellFormula(formula);
            cell.CellValue   = new CellValue("0");

            string wsPartID = this.workbook.GetIdOfPart(wsPart);

            if (wsPartID == null)
            {
                Console.WriteLine("InsertFormula [ERROR]: Internal error!");
                return(null);
            }
            Sheets sheets = this.workbook.Workbook.GetFirstChild <Sheets>();

            Sheet correspondingSheet = sheets.Elements <Sheet>()
                                       .Where(e => string.Compare(e.Id, wsPartID, true) == 0).FirstOrDefault();

            if (correspondingSheet == null)
            {
                Console.WriteLine("InsertFormula [ERROR]: Internal error!");
                return(null);
            }

            int  sheetID;
            bool res = int.TryParse(correspondingSheet.SheetId.ToString(), out sheetID);

            if (res == false)
            {
                Console.WriteLine("InsertFormula [ERROR]: Internal error!");
                return(null);
            }
            CalculationCell calCel;

            //  If there is already cal cell at CellReference in SheetID, no need to add new:
            calCel = this.calcChain.CalculationChain.Elements <CalculationCell>()
                     .Where(c => c.CellReference == cell.CellReference && c.SheetId == sheetID)
                     .FirstOrDefault();
            if (calCel == null)
            {
                calCel = new CalculationCell()
                {
                    CellReference = cell.CellReference, NewLevel = true, SheetId = sheetID
                };
                this.calcChain.CalculationChain.Append(calCel);
            }

            this.workbook.Workbook.CalculationProperties.ForceFullCalculation  = true;
            this.workbook.Workbook.CalculationProperties.FullCalculationOnLoad = true;
            this.workbook.Workbook.Save();
            return(cell);
        }
コード例 #20
0
        // Generates content of calculationChainPart1.
        private void GenerateCalculationChainPart1Content(CalculationChainPart calculationChainPart1)
        {
            CalculationChain calculationChain1 = new CalculationChain();
            CalculationCell calculationCell1 = new CalculationCell(){ CellReference = "C22", SheetId = 27 };
            CalculationCell calculationCell2 = new CalculationCell(){ CellReference = "D22" };
            CalculationCell calculationCell3 = new CalculationCell(){ CellReference = "E22" };
            CalculationCell calculationCell4 = new CalculationCell(){ CellReference = "F22" };
            CalculationCell calculationCell5 = new CalculationCell(){ CellReference = "G22" };
            CalculationCell calculationCell6 = new CalculationCell(){ CellReference = "H22" };
            CalculationCell calculationCell7 = new CalculationCell(){ CellReference = "I22" };
            CalculationCell calculationCell8 = new CalculationCell(){ CellReference = "J22" };
            CalculationCell calculationCell9 = new CalculationCell(){ CellReference = "C27" };
            CalculationCell calculationCell10 = new CalculationCell(){ CellReference = "D27" };
            CalculationCell calculationCell11 = new CalculationCell(){ CellReference = "E27" };
            CalculationCell calculationCell12 = new CalculationCell(){ CellReference = "F27" };
            CalculationCell calculationCell13 = new CalculationCell(){ CellReference = "G27" };
            CalculationCell calculationCell14 = new CalculationCell(){ CellReference = "H27" };
            CalculationCell calculationCell15 = new CalculationCell(){ CellReference = "I27" };
            CalculationCell calculationCell16 = new CalculationCell(){ CellReference = "J27" };
            CalculationCell calculationCell17 = new CalculationCell(){ CellReference = "C32" };
            CalculationCell calculationCell18 = new CalculationCell(){ CellReference = "D32" };
            CalculationCell calculationCell19 = new CalculationCell(){ CellReference = "E32" };
            CalculationCell calculationCell20 = new CalculationCell(){ CellReference = "F32" };
            CalculationCell calculationCell21 = new CalculationCell(){ CellReference = "G32" };
            CalculationCell calculationCell22 = new CalculationCell(){ CellReference = "H32" };
            CalculationCell calculationCell23 = new CalculationCell(){ CellReference = "I32" };
            CalculationCell calculationCell24 = new CalculationCell(){ CellReference = "J32" };
            CalculationCell calculationCell25 = new CalculationCell(){ CellReference = "C37" };
            CalculationCell calculationCell26 = new CalculationCell(){ CellReference = "D37" };
            CalculationCell calculationCell27 = new CalculationCell(){ CellReference = "E37" };
            CalculationCell calculationCell28 = new CalculationCell(){ CellReference = "F37" };
            CalculationCell calculationCell29 = new CalculationCell(){ CellReference = "G37" };
            CalculationCell calculationCell30 = new CalculationCell(){ CellReference = "H37" };
            CalculationCell calculationCell31 = new CalculationCell(){ CellReference = "I37" };
            CalculationCell calculationCell32 = new CalculationCell(){ CellReference = "J37" };
            CalculationCell calculationCell33 = new CalculationCell(){ CellReference = "C42" };
            CalculationCell calculationCell34 = new CalculationCell(){ CellReference = "D42" };
            CalculationCell calculationCell35 = new CalculationCell(){ CellReference = "E42" };
            CalculationCell calculationCell36 = new CalculationCell(){ CellReference = "F42" };
            CalculationCell calculationCell37 = new CalculationCell(){ CellReference = "G42" };
            CalculationCell calculationCell38 = new CalculationCell(){ CellReference = "H42" };
            CalculationCell calculationCell39 = new CalculationCell(){ CellReference = "I42" };
            CalculationCell calculationCell40 = new CalculationCell(){ CellReference = "J42" };
            CalculationCell calculationCell41 = new CalculationCell(){ CellReference = "I44" };
            CalculationCell calculationCell42 = new CalculationCell(){ CellReference = "G45" };
            CalculationCell calculationCell43 = new CalculationCell(){ CellReference = "G46" };
            CalculationCell calculationCell44 = new CalculationCell(){ CellReference = "I46" };
            CalculationCell calculationCell45 = new CalculationCell(){ CellReference = "G47" };
            CalculationCell calculationCell46 = new CalculationCell(){ CellReference = "G48" };
            CalculationCell calculationCell47 = new CalculationCell(){ CellReference = "I48" };
            CalculationCell calculationCell48 = new CalculationCell(){ CellReference = "G49" };
            CalculationCell calculationCell49 = new CalculationCell(){ CellReference = "I49" };
            CalculationCell calculationCell50 = new CalculationCell(){ CellReference = "G50" };

            calculationChain1.Append(calculationCell1);
            calculationChain1.Append(calculationCell2);
            calculationChain1.Append(calculationCell3);
            calculationChain1.Append(calculationCell4);
            calculationChain1.Append(calculationCell5);
            calculationChain1.Append(calculationCell6);
            calculationChain1.Append(calculationCell7);
            calculationChain1.Append(calculationCell8);
            calculationChain1.Append(calculationCell9);
            calculationChain1.Append(calculationCell10);
            calculationChain1.Append(calculationCell11);
            calculationChain1.Append(calculationCell12);
            calculationChain1.Append(calculationCell13);
            calculationChain1.Append(calculationCell14);
            calculationChain1.Append(calculationCell15);
            calculationChain1.Append(calculationCell16);
            calculationChain1.Append(calculationCell17);
            calculationChain1.Append(calculationCell18);
            calculationChain1.Append(calculationCell19);
            calculationChain1.Append(calculationCell20);
            calculationChain1.Append(calculationCell21);
            calculationChain1.Append(calculationCell22);
            calculationChain1.Append(calculationCell23);
            calculationChain1.Append(calculationCell24);
            calculationChain1.Append(calculationCell25);
            calculationChain1.Append(calculationCell26);
            calculationChain1.Append(calculationCell27);
            calculationChain1.Append(calculationCell28);
            calculationChain1.Append(calculationCell29);
            calculationChain1.Append(calculationCell30);
            calculationChain1.Append(calculationCell31);
            calculationChain1.Append(calculationCell32);
            calculationChain1.Append(calculationCell33);
            calculationChain1.Append(calculationCell34);
            calculationChain1.Append(calculationCell35);
            calculationChain1.Append(calculationCell36);
            calculationChain1.Append(calculationCell37);
            calculationChain1.Append(calculationCell38);
            calculationChain1.Append(calculationCell39);
            calculationChain1.Append(calculationCell40);
            calculationChain1.Append(calculationCell41);
            calculationChain1.Append(calculationCell42);
            calculationChain1.Append(calculationCell43);
            calculationChain1.Append(calculationCell44);
            calculationChain1.Append(calculationCell45);
            calculationChain1.Append(calculationCell46);
            calculationChain1.Append(calculationCell47);
            calculationChain1.Append(calculationCell48);
            calculationChain1.Append(calculationCell49);
            calculationChain1.Append(calculationCell50);

            calculationChainPart1.CalculationChain = calculationChain1;
        }
コード例 #21
0
        // Generates content of calculationChainPart1.
        private void GenerateCalculationChainPart1Content(CalculationChainPart calculationChainPart1)
        {
            CalculationChain calculationChain1 = new CalculationChain();
            CalculationCell calculationCell1 = new CalculationCell() { CellReference = "I49", SheetId = 1 };
            CalculationCell calculationCell2 = new CalculationCell() { CellReference = "I48" };
            CalculationCell calculationCell3 = new CalculationCell() { CellReference = "I46" };
            CalculationCell calculationCell4 = new CalculationCell() { CellReference = "I44" };
            CalculationCell calculationCell5 = new CalculationCell() { CellReference = "J42" };
            CalculationCell calculationCell6 = new CalculationCell() { CellReference = "J37" };
            CalculationCell calculationCell7 = new CalculationCell() { CellReference = "J32" };
            CalculationCell calculationCell8 = new CalculationCell() { CellReference = "J27" };
            CalculationCell calculationCell9 = new CalculationCell() { CellReference = "J22" };

            calculationChain1.Append(calculationCell1);
            calculationChain1.Append(calculationCell2);
            calculationChain1.Append(calculationCell3);
            calculationChain1.Append(calculationCell4);
            calculationChain1.Append(calculationCell5);
            calculationChain1.Append(calculationCell6);
            calculationChain1.Append(calculationCell7);
            calculationChain1.Append(calculationCell8);
            calculationChain1.Append(calculationCell9);

            calculationChainPart1.CalculationChain = calculationChain1;
        }