Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

из StringGrid в Excel [D7, MySQL]


X_ksandr_X ©   (2007-04-16 09:33:00) 

Всем привет.
Люди добрые подскажите плиз. У меня есть Excel файл, который я подгружаю в StrinGrid с этим проблемм нет. Мне нужно сделать так чтоб загруженные данные я мог редоктировать и по нажатии на кнопку они изменялись в данном файле Excel.
Заранее спасибо.


Jan1   (2007-04-16 12:19:00) [1]


> Карелин Артем ©   (16.04.07 12:18) [10]

Ты 100 раз прав! Я с утрировал, но может автору это и надо? Может он велик себе придумал? :)


Карелин Артем   (2007-04-16 12:18:00) [2]


> Jan1   (16.04.07 12:00) [9]

Эта связка хороша только в простейших случаях, когда данные в виде примитивной таблицы представлены.
У меня например есть множество шаблонов, в которых надо заполнять неизвестно где расположенные именованные области, обьединенные ячейки, разбросанные по всему листу. Я как-то плохо представляю как заполнить например шаблон полиса ОСАГО через SQL. А так все хорошо заполняется несколькими коротким кодом.


Jan1   (2007-04-16 12:00:00) [3]


> Уверен? )))

DBGrid+ADODataSet+ADOConnection и нет даже строчки кода :)


Карелин Артем   (2007-04-16 11:59:00) [4]


> Jan1   (16.04.07 11:52) [7]

Уверен? )))


Jan1   (2007-04-16 11:52:00) [5]


> К сожалению я не использую пока сдесь БД и SQL. Мне пока
> всего лишь навсего нужно переместить данные в Excel.

а зря. на порядок меньше кода бы было.


Карелин Артем   (2007-04-16 11:37:00) [6]

function TMainData.StringGrid2Excel(const ExcelDoc: variant; const row,
 col: integer; const Grid: TStringGrid): integer;
var
 y: integer;
 i, j: integer;
 RowCount, ColCount: integer;
 Cell1, Cell2, ArrayData: Variant;
begin
 Screen.Cursor := crHourGlass;
 Application.ProcessMessages;
 y := row;
 RowCount := Grid.RowCount;
 ColCount := Grid.ColCount;
 ArrayData := VarArrayCreate([0, RowCount + 1, 0, ColCount], varVariant);
 for i := 0 to RowCount do
   for J := 0 to ColCount do
     ArrayData[I, J] := Grid.Cells[i, j];
 Cell1 := ExcelDoc.Cells[Row + 1, Col];
 Cell2 := ExcelDoc.Cells[Row + RowCount - 2, Col + ColCount - 2];
 ExcelDoc.Range[Cell1, Cell2].NumberFormat := '0';
 ExcelDoc.Range[Cell1, Cell2].Value := ArrayData;
 Screen.Cursor := crDefault;
 Result := RowCount - 1;
end;


X_ksandr_X   (2007-04-16 10:57:00) [7]

Ладно всем спасибо за советы.
Попробуем.


Desdechado   (2007-04-16 10:53:00) [8]

Имхо, проще использовать книжку экселя как набор данных, тогда не надо ничего перемещать.


Jan1   (2007-04-16 10:37:00) [9]

http://delphikingdom.ru/asp/itemq.asp?mode=1&itemid=2


X_ksandr_X   (2007-04-16 10:31:00) [10]

К сожалению я не использую пока сдесь БД и SQL. Мне пока всего лишь навсего нужно переместить данные в Excel.


Jan1   (2007-04-16 10:18:00) [11]


> У меня есть Excel файл, который я подгружаю в StrinGrid
> с этим проблемм нет

чем ADO и DBGrid не устроил?


Наверх

Титульная страница Поиск, карта сайта Написать письмо