Board index » delphi » Sorting Excel range selections

Sorting Excel range selections

Why would this code return "Sort method of Range class failed"?
What more do I need? What am I doing wrong here?

    ExcelObject := CreateOleObject('Excel.Application');
    ExcelObject.WorkBooks.Open('D:\TEST.XLS');
    SortRange := ExcelObject.Range['A1:A10'];
    ExcelObject.Selection.Sort( sortRange,     // Key1,
                                xlAscending,   // Order1,
                                '',            // Key2,
                                '',            // Type,
                                '',            // Order2,
                                '',            // Key3,
                                '',            // Order3,
                                xlGuess,       // Header,
                                1,             // OrderCustom,
                                False,         // MatchCase,
                                xlTopToBottom, // Orientation
                                1);            // SortMethod;
    ExcelObject.Quit;

 

Re:Sorting Excel range selections


Quote
Eddie Shipman wrote:
> Why would this code return "Sort method of Range class failed"?
> What more do I need? What am I doing wrong here?

<SNIP>

Nevermind, I found it:

 ExcelObject := CreateOleObject('Excel.Application');
 ExcelObject.WorkBooks.Open('D:\TEST.XLS');
 ExcelObject.Range['A1:A10'].Select;
 SortRange := ExcelObject.Range['A1'];
 ExcelObject.Selection.Sort( Key1        := sortRange,
                             Order1      := xlAscending,
                             Header      := xlGuess,
                             OrderCustom := 1,
                             MatchCase   := False,
                             Orientation := xlTopToBottom,
                             SortMethod  := 1);
 label1.Caption := 'Sorted';
 ExcelObject.ActiveWorkbook.Save;
 ExcelObject.Quit;

Other Threads