Is it possible to read specific updated row from the Excel using.NET Libraries

Hi Team,
I have licensed ASPOSE version , I have question on read the excel using the .NET ASPOSE libraries ,

I have excel file and users will update the file every hour and I need to read only the updated rows from excel using .NET libraries.

Is it possible to read only the updated rows from the excel.?

Thank you
Venkat.

@venkatnamburu,

I think you may get the list of changes from an Excel file via Aspose.Cells APIs with MS Excel’s track changes feature on. Aspose.Cells supports to get changes/revisions if track changes are enabled in the file. See the following sample code on how to use track changes feature for your reference.
e.g.
Sample code:

                Workbook workbook = new Workbook(file);
                foreach(RevisionLog log in workbook.Worksheets.RevisionLogs)
                {
                    RevisionCollection rvs = log.Revisions;
                    foreach (Revision rv in rvs)
                    {
                        switch (rv.Type)
                        {

                            case RevisionType.InsertDelete:
                                RevisionInsertDelete rrc = (RevisionInsertDelete)rv;
                                Console.WriteLine(string.Format("ActionType :{0}; newArea : {1}.", rrc.ActionType, rrc.CellArea));
                                Console.WriteLine(rrc.CellArea);
                                break;
                            case RevisionType.ChangeCells:
                                RevisionCellChange rcc = (RevisionCellChange)rv;
                                string str = string.Format("CellName :{0}; OldValue : {1} ;NewOld : {2}.", rcc.CellName, rcc.OldValue, rcc.NewValue);
                                Console.WriteLine(str);
                                break;
                            case RevisionType.MoveCells:
                                RevisionCellMove rm = (RevisionCellMove)rv;
                                Console.WriteLine(string.Format("SourceArea :{0}; newArea : {1}.", rm.SourceArea, rm.DestinationArea));
                                break;
                            case RevisionType.CustomView:
                                RevisionCustomView rcv = (RevisionCustomView)rv;
                                Console.WriteLine(string.Format("ActionType :{0}; guid : {1}.", rcv.ActionType, rcv.Guid));
                                break;
                            case RevisionType.Format:
                                RevisionFormat rfmt = (RevisionFormat)rv;
                                Console.WriteLine(string.Format("worksheet :{0}; area : {1}.", rfmt.Worksheet.Name, rfmt.Areas[0]));
                                break;
                            case RevisionType.InsertSheet:
                                RevisionInsertSheet ris = (RevisionInsertSheet)rv;
                                Console.WriteLine(string.Format("newsheet :{0}; sheetPosition : {1}.", ris.Name, ris.SheetPosition));
                                break;
                            case RevisionType.DefinedName:
                                RevisionDefinedName rdn = (RevisionDefinedName)rv;
                                Console.WriteLine(string.Format("Test :{0}; oldFormula :{1};  newformula : {2}.", rdn.Text, rdn.OldFormula, rdn.NewFormula));

                                break;
                            case RevisionType.RenameSheet:
                                RevisionRenameSheet rsnm = (RevisionRenameSheet)rv;
                                Console.WriteLine(string.Format("OldName :{0}; newName :{1}.", rsnm.OldName, rsnm.NewName));
                                break;
                            default:
                                Console.WriteLine(rv.Type);
                                break;
                        }
                    }
                }

Hope, this helps a bit.

Okay Thanks @amjad.sahi

So using this feature I can track / read row which is updated and not the entire rows ?

@venkatnamburu
Workbook.Worksheets.RevisionLogs property stores user operation records, which can be used to track which rows have changed and which cells have been modified, and other operations.
If modifications are made to a file through a program, they will not be recorded in the Workbook.Worksheets.RevisionLogs attribute.
If you already know which rows have been modified and only want to load certain rows or cells when reading the file, you can use LightCells for the operation. Please check the following documents.