|
Вопрос # 5 441/ вопрос решён / |
|
Здравствуйте! Помогите решить проблему! Делаю экспорт таблицы Stringgrid в Excel, первый столбец stringgrida содержит записи, остальные цифры. Так вот проблема в том что цифры переносятся, а первый столбец показывает как пустой, хотя он заполнен специальностями! Ниже приведен код, помогите разобраться пожалуйста, что там нужно поправить!?
Приложение: Переключить в обычный режим- procedure TForm12.sButton1Click(Sender: TObject);
- var
- ExcelApp, Workbook, Range, Cell1, Cell2, ArrayData : Variant;
- BeginCol, BeginRow,i, j: integer;
- begin
- if form12.sCheckBox2.Checked=true then
- if form12.sCheckBox3.Checked=true then
- begin
- BeginCol := 1;
- BeginRow := 9;
- ExcelApp := CreateOleObject('Excel.Application');
-
- ArrayData := VarArrayCreate([1,StringGrid2.RowCount+2, 0, StringGrid2.ColCount+2], varVariant);
- for I := 1 to StringGrid2.ColCount-1 do
- for J := 1 to StringGrid2.RowCount-1 do
- ArrayData[j, i] := Form12.StringGrid2.Cells[i,j];
- Cell1 := WorkBook.WorkSheets['God'].Cells[BeginRow, BeginCol];
- Cell2 := WorkBook.WorkSheets['God'].Cells[BeginRow + Form12.StringGrid2.RowCount - 1,
- BeginCol + Form12.StringGrid2.ColCount - 1];
- Range := WorkBook.WorkSheets['God'].Range[Cell1, Cell2];
- Range.Value := ArrayData;
- ExcelApp.Visible := true;
- end;
- if form12.sCheckBox2.Checked=false then
- if form12.sCheckBox3.Checked=false then
-
- end;
 |
Вопрос задал: alexlafa (статус: Посетитель)
Вопрос отправлен: 23 июня 2011, 08:02
Состояние вопроса: решён, ответов: 1.
|
Ответ #1. Отвечает эксперт: min@y™
Здравствуйте, alexlafa!
for I := 0 to StringGrid2.ColCount - 1 do // <--- при StringGrid2.FixedCols = 0
 |
Ответ отправил: min@y™ (статус: Доктор наук)
Время отправки: 23 июня 2011, 10:22
Оценка за ответ: 5
|
Мини-форум вопроса
Всего сообщений: 1; последнее сообщение — 23 июня 2011, 10:46; участников в обсуждении: 1.
|
min@y™ (статус: Доктор наук), 23 июня 2011, 10:46 [#1]:
Особо не читая:
procedure TForm12.sButton1Click(Sender: TObject);
var
ExcelApp, Workbook, Range, Cell1, Cell2, ArrayData: Variant;
BeginCol, BeginRow, i, j: integer;
begin
if sCheckBox2.Checked and sCheckBox3.Checked
then with StringGrid2 do
begin
BeginCol := 1;
BeginRow := 9;
ExcelApp := CreateOleObject('Excel.Application');
Workbook := ExcelApp.WorkBooks.add(ExtractFilePath(ParamStr(0)) + 'Движения.xls');
ArrayData := VarArrayCreate([1, RowCount + 2, 0, ColCount + 2], varVariant);
for I := FixedCols to ColCount - 1 do
for J := FixedRows to RowCount - 1 do
ArrayData[j, i] := Cells[i,j];
Cell1 := WorkBook.WorkSheets['God'].Cells[BeginRow, BeginCol];
Cell2 := WorkBook.WorkSheets['God'].Cells[BeginRow + RowCount - 1, BeginCol + ColCount - 1];
Range := WorkBook.WorkSheets['God'].Range[Cell1, Cell2];
Range.Value := ArrayData;
ExcelApp.Visible := True;
end
else showmessage ('Отчеты не готовы к экспорту в MS Excel, подготовьте их!');
end;
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
|
23 июня 2011, 11:35: Вопрос перемещён из тематического раздела Delphi » Общие вопросы по программированию в раздел Delphi » Работа с компонентами и библиотеками модератором Ерёмин А.А.
23 июня 2011, 12:14: Статус вопроса изменён на решённый (изменил автор вопроса — alexlafa): Решен!
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|