![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Здравствуйте, помогите пжл решить задачу. Есть база акцесс, в ней таблица "Dog" в ней 3 поля "Num_Dog", "Date_Start", "Sum". Эта информация вытягивается (SQL) в грид "Main_Grid". Задача, как вытянутую информацию из грида экспортировать в шаблон эксель "Temp_Dog" ("Num_Dog" в Лист1 А1, "Date_Start" в Лист1 В1, "Date_Start" в Лист1 С1) потом печать листа1, и по циклу так все строки из грида. Помогите пжл.
|
|
#2
|
|||
|
|||
|
Вообще-то для таких простых операций (если надо просто все вытянуть) в Экселе есть специальная функция, позволяющая ему связываться с БД и брать оттуда данные.
Если же хочется чего-то странного (читай нестандартного, например вытащить только строчки, выбранные пользователем, или налету что-то подправить), то смотри как работать с Экселем через OLE. Примеров, в том числе и тут, полно. ЗЫ. Еще есть библиотека XlsReadWriterII, но она специфическая (и еще платная) и печатать из нее нельзя (в смысле, напрямую нельзя, через нее). |
|
#3
|
|||
|
|||
|
Я понимаю, что для знатаков это более чем элементарно, но для меня, новичка, это числам сложно, иначе сделал бы без вопросов. Если кто может потратить чуть времени, помогите пжл.
|
|
#4
|
||||
|
||||
|
Цитата:
Такие ссылки тебе должны помочь: Excel ЧаВо часть I: Excel.Application Excel ЧаВо часть II: Worksbooks и Worksheets Excel ЧаВо часть III: Cells, Range, Rows и Columns Excel ЧаВо часть IV: Chart, Shape, Picture Excel ЧаВо часть V: Внешние источники данных Если что-то конкретное не получается - спрашивай. |
|
#5
|
|||
|
|||
|
Здравствуйте. Ниже приведен код на экспорт в созданный "вручную шаблон" Эксель. Все работает, но не знаю как pflfnm формат ячеек вновь создаваемых строк по подобию уже имеющихся. Например есть в "шаблоне" шестая строка которая имеет определенный формат, как сделать так, чтобы вставляемая строка имела формат предыдущей строчки. т.е. от WSheet.Cells.Item[6+i,1] до i.
Код:
procedure Tf_Reestr.SpeedButton2Click(Sender: TObject);
const lcid = LOCALE_USER_DEFAULT;
var
WBook:_WorkBook;
WSheet:_Worksheet;
i: integer;
begin
ExcelApplication1.Connect;
WBook := ExcelApplication1.Workbooks.Add(ExtractFilePath(Application.ExeName) + '\templ_reestr.xlsx',LCID);
ExcelApplication1.Visible[0] := True;
WSheet := WBook.Worksheets[1] as ExcelWorksheet;
i := 1;
Q_Reestr_List.First;
while not Q_Reestr_List.Eof do
begin
WSheet.Cells.Item[6+i,1].Value := inttostr(i);
WSheet.Cells.Item[6+i,3].Value := Q_Reestr_List.FieldByName('Polis').Value;
inc(i);
Q_Reestr_List.Next;
end;
end; |
|
#6
|
||||
|
||||
|
Вот тебе еще ссылочка на тему работы с MS Word и MS Excel.
По поводу твоего кода: Код:
ExcelApplication1.Visible[0] := True; |
|
#7
|
|||
|
|||
|
Спасибо за ссылку. Конкретного ответа не нашел, но нашел уйму нужного. Задачу решил вставкой
Код:
WSheet.Cells.Item[6+i,3].HorizontalAlignment := xlCenter |
|
#8
|
|||
|
|||
|
Так и не пойму что нужно написать чтобы отключиться от экселя (после вывода в эксель). После закрытия программы эксель закрывается с вопросом о сохранении. Нужно чтобы после закрытия проги эксель жил сам по себе.
|
|
#9
|
||||
|
||||
|
Цитата:
А так же после формирования отчёта не забывай отключаться от Excel'я: Код:
ExcelApplication1.Disconnect; |
|
#10
|
|||
|
|||
|
Спасибо. Ранее писал
Код:
ExcelApplication1.Disconnect; |
|
#11
|
|||
|
|||
|
Помогите пжл выставить ширину столбца, пересмотрел много примеров, ноне один не смог перенести на свой код.
Код:
ExcelApplication1.Connect;
WBook := ExcelApplication1.Workbooks.Add(EmptyParam, lcid);
WSheet := WBook.Worksheets[1] as ExcelWorksheet;
WSheet.Columns[1].ColumnWidth := 6;
WSheet.Cells.Item[6,1].Value := '№';
WSheet.Cells.Item[6,1].HorizontalAlignment := xlCenter;
WSheet.Cells.Item[6,1].Borders.LineStyle := xlContinuous;
WSheet.Cells.Item[6,1].Interior.ColorIndex:= 34; |
|
#12
|
||||
|
||||
|
Цитата:
Код:
WSheet.Cells.Item[6,1].ColumnWidth := 6; |
| Этот пользователь сказал Спасибо poli-smen за это полезное сообщение: | ||
DOR (18.10.2012)
| ||
|
#13
|
|||
|
|||
|
Спасибо. Помогло.
|