Показать сообщение отдельно
Старый 27.10.2005, 18:10   #2  
AndyD is offline
AndyD
Участник
КОРУС Консалтинг
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
2,560 / 2480 (88) +++++++++
Регистрация: 20.08.2005
X++:
//XlSortOrder
 #define.xlAscending(0x00000001)
 #define.xlDescending(0x00000002)
 
 //XlYesNoGuess
 #define.xlGuess(0x00000000)
 #define.xlNo(0x00000002)
 #define.xlYes(0x00000001)
 
 //XlSortOrientation
 #define.xlSortRows(0x00000001)
 #define.xlSortColumns(0x00000002)
 
 static void SortExcel(Args _args)
 {
     ComExcelDocument_Ru     excel = new ComExcelDocument_Ru();
    COM                     Doc;
    COM                     App;
    COM                     Sheet;
    COM                     r;
    int                     row;
     ;
     excel.newFile();
     excel.Visible(False);
     Doc = excel.getComDocument();
     App = Doc.Application();
     sheet = App.ActiveSheet();
     for (row = 1; row <= 200; row++)
     {
         r = Sheet.Range(ComExcelDocument_Ru::numToNameCell(1, row));
         r.Value2(ComVariant::createFromInt(row));
         r = Sheet.Range(ComExcelDocument_Ru::numToNameCell(2, row));
         r.Value2(ComVariant::createFromInt(row mod 7));
         r = Sheet.Range(ComExcelDocument_Ru::numToNameCell(3, row));
         r.Value2(ComVariant::createFromInt(row mod 11));
     }
     r = Sheet.Range(ComExcelDocument_Ru::numToNameCell(1, 1), ComExcelDocument_Ru::numToNameCell(3, 1));
     r = r.EntireColumn();
 
     r.Sort(ComVariant::createFromCOM(Sheet.Range("C1")), ComVariant::createFromInt(#xlAscending),
            ComVariant::createNoValue(),
           ComVariant::createFromCOM(Sheet.Range("B1")), ComVariant::createFromInt(#xlDescending),
           ComVariant::createFromCOM(Sheet.Range("A1")), ComVariant::createFromInt(#xlAscending),
           ComVariant::createFromInt(#xlNo), ComVariant::createNoValue(), ComVariant::createFromBoolean(True),
            ComVariant::createFromInt(#xlSortRows));
     excel.Visible(True);
 }
__________________
Axapta v.3.0 sp5 kr2
За это сообщение автора поблагодарили: samolalex (2), CHESER85 (1).