public static void Run()
        {
            // ExStart:1
            //Source directory
            string sourceDir = RunExamples.Get_SourceDirectory();

            //Load source Excel file
            Workbook workbook = new Workbook(sourceDir + "SampleExternalReferences.xlsx");

            foreach (Name namedRange in workbook.Worksheets.Names)
            {
                ReferredArea[] referredAreas = namedRange.GetReferredAreas(true);
                if (referredAreas != null)
                {
                    for (int i = 0; i < referredAreas.Length; i++)
                    {
                        ReferredArea referredArea = referredAreas[i];
                        // Print the data in Referred Area
                        Console.WriteLine("IsExternalLink: " + referredArea.IsExternalLink);
                        Console.WriteLine("IsArea: " + referredArea.IsArea);
                        Console.WriteLine("SheetName: " + referredArea.SheetName);
                        Console.WriteLine("ExternalFileName: " + referredArea.ExternalFileName);
                        Console.WriteLine("StartColumn: " + referredArea.StartColumn);
                        Console.WriteLine("StartRow: " + referredArea.StartRow);
                        Console.WriteLine("EndColumn: " + referredArea.EndColumn);
                        Console.WriteLine("EndRow: " + referredArea.EndRow);
                    }
                }
            }
            // ExEnd:1

            Console.WriteLine("GetRangeWithExternalLinks executed successfully.\r\n");
        }
        public static void Main(string[] args)
        {
            //ExStart:1
            // The path to the documents directory.
            string dataDir = Aspose.Cells.Examples.Utils.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);

            Workbook workbook = new Workbook(dataDir + "Book1.xlsx");
            Cells    cells    = workbook.Worksheets[0].Cells;
            Cell     cell     = cells["B4"];

            ReferredAreaCollection ret  = cell.GetPrecedents();
            ReferredArea           area = ret[0];

            Console.WriteLine(area.SheetName);
            Console.WriteLine(CellsHelper.CellIndexToName(area.StartRow, area.StartColumn));
            Console.WriteLine(CellsHelper.CellIndexToName(area.EndRow, area.EndColumn));
            //ExEnd:1
            Console.ReadKey();
        }
        public override void Calculate(CalculationData data)
        {
            decimal total = 0M;

            try
            {
                // Get value of first parameter
                object firstParameter = data.GetParamValue(0);
                Console.WriteLine(data.GetParamValue(0).GetType());

                decimal firstParamB1 = 0;

                if (firstParameter is ReferredArea)
                {
                    ReferredArea ra = (ReferredArea)firstParameter;
                    firstParamB1 = System.Convert.ToDecimal(ra.GetValue(0, 0));
                }

                // Get value of second parameter
                object secondParameter = data.GetParamValue(1);
                Console.WriteLine(data.GetParamValue(1).GetType());

                if (secondParameter is ReferredArea)
                {
                    ReferredArea ra = (ReferredArea)secondParameter;

                    // get every item value of second parameter
                    foreach (object[] value in (Array)ra.GetValues())
                    {
                        total += System.Convert.ToDecimal(value[0]);
                    }
                }

                total = total / firstParamB1;
            }
            catch
            {
            }

            // Result of the function
            data.CalculatedValue = total;
        }
Esempio n. 4
0
        static void Main(string[] args)
        {
            // Tracing Precedents

            //Instantiating a Workbook object
            Workbook workbook = new Workbook("C:\\book1.xls");
            Cells    cells    = workbook.Worksheets[0].Cells;

            Aspose.Cells.Cell cell = cells["B7"];

            //Tracing precedents of the cell B7.
            //The return array contains ranges and cells.
            ReferredAreaCollection ret = cell.GetPrecedents();

            //Printing all the precedent cells' name.
            if (ret != null)
            {
                for (int m = 0; m < ret.Count; m++)
                {
                    ReferredArea  area          = ret[m];
                    StringBuilder stringBuilder = new StringBuilder();
                    if (area.IsExternalLink)
                    {
                        stringBuilder.Append("[");
                        stringBuilder.Append(area.ExternalFileName);
                        stringBuilder.Append("]");
                    }
                    stringBuilder.Append(area.SheetName);
                    stringBuilder.Append("!");
                    stringBuilder.Append(CellsHelper.CellIndexToName(area.StartRow, area.StartColumn));
                    if (area.IsArea)
                    {
                        stringBuilder.Append(":");
                        stringBuilder.Append(CellsHelper.CellIndexToName(area.EndRow, area.EndColumn));
                    }


                    Console.WriteLine(stringBuilder.ToString());
                }
            }
        }