Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.04.23;
Скачать: [xml.tar.bz2];

Вниз

excelapplication   Найти похожие ветки 

 
bagos   (2006-04-10 12:40) [0]

var
 WorkBk : _WorkBook;
 WorkSheet : _WorkSheet;
 maxrow,K, R, X, Y : Integer;
 IIndex : OleVariant;
 RangeMatrix : Variant;
 NomFich : WideString;
begin
 maxrow:=0;
 try
   if OpenDialog1.Execute then begin
     NomFich := OpenDialog1.FileName;
     IIndex := 1;
     XLApp.Connect;
     // Открываем файл Excel
    XLApp.WorkBooks.Open(NomFich,EmptyParam,EmptyParam,EmptyParam,EmptyParam, EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,
EmptyParam,EmptyParam,0);
     WorkBk := XLApp.WorkBooks.Item[IIndex];
     WorkSheet := WorkBk.WorkSheets.Get_Item(1) as _WorkSheet;
     // Для того, чтобы знать размеры Листа (WorkSheet), то есть число строк
     // и колонок
     // Получаем значение последней строки
     X := WorkSheet.Cells.SpecialCells(xlCellTypeLastCell,EmptyParam).Row;
     // Получаем значение последней колонки
     Y := WorkSheet.Cells.SpecialCells(xlCellTypeLastCell,EmptyParam).Column;
     // Определяем число колонок в TStringGrid

     if GenericStringGrid.rowCount < X then GenericStringGrid.rowCount := X;
     if GenericStringGrid.ColCount < Y then GenericStringGrid.ColCount := Y;
     edit1.Text:=inttostr(X);
     // Связываем Variant переменные Листа с Delphi Variant Matrix
//      RangeMatrix := XLApp.Range["A1",XLApp.Cells.Item[X,Y]].Value[xlRangeValueDefault];
     RangeMatrix := XLApp.Range["A1",XLApp.Cells.Item[X,Y]].Value;
     // Закрываем Excel и отсоединяемся от сервера
     XLApp.Quit;
     XLApp.Disconnect;
     K := 2;
     // Цикл для заполнения TStringGrid
     repeat
       for R := 1 to Y do
         GenericStringGrid.Cells[(R - 1),(K + MaxRow - 1)] := RangeMatrix[K,R];
       Inc(K,1);
       GenericStringGrid.RowCount := K + MaxRow + 1;
     until K > X;
     MaxRow := MaxRow + X;
     // Освобождаем Delphi Variant Matrix
     RangeMatrix := Unassigned;
   end;
   GenericStringGrid.RowCount:=maxrow;
 except
   ShowMessage("Невозможно открыть файл");
   Exit;
 end;

суть чего хочу получить:
открываю 1.xls файл,он загружаеться данные в stringgrid
открываю следующий 2.xls файл и его данные должны загружаться сразу или через строчку после уже имеющихся в stringgrid(те которые загрузились из 1.xls)...вот не получается,а скоро уже экзамен,помогите,я начинающий


 
EvS ©   (2006-04-10 13:44) [1]

Что именно не получается?



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.04.23;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.013 c
6-1136928251
HITMAN
2006-01-11 00:24
2006.04.23
Делаю так а почему то файл приходит весом 0 кб В чём ошибка???


15-1144047436
Новичоккк
2006-04-03 10:57
2006.04.23
Только что узнал что Razorback закрыли (eMule)


8-1132396316
Alaman
2005-11-19 13:31
2006.04.23
Как качественно уменьшить JPEG изображение?


2-1144342181
Isaev
2006-04-06 20:49
2006.04.23
Проблема компиляции


2-1144325836
Layner
2006-04-06 16:17
2006.04.23
Как правильно сделать "скользящий курсор" по выборке





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский