Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.05.2013, 01:04   #1
drongo666
Новичок
Джуниор
 
Регистрация: 23.03.2013
Сообщений: 1
Восклицание Экспорт в одну ячейку Excel значений из двух полей DBGrid

Приветствую. ТАкая ситуация. Есть справочник сотрудников (адреса, телефоны, дата рождения и т.д.)
Необходимо сделать возможность экспорта базы в excel. ПРостой экспорт я сделал, все поля аккуратно выводятся.
Но нужно сделать так: к примеру у человека есть 2 мобильных телефона (3,4,5...). Нужно вывести их в одну ячейку в excel, т.е. в Delphi оно выглядит так:


Код:
ФИО          Тел1            Тел2
Иванов   82-222-22    85-547-87
То в экселе должно быть так


Код:
ФИО      |    Тел
___________________
Иванов  |  82-222-22
        |  85-547-87
___________________
Подскажите как такое реализовать?
Для экспорта использую алгоритм

Код:
procedure TFMain.ExpExlExecute(Sender: TObject);
  var
 XL, XArr: Variant;
 i: Integer;
 j: Integer;
begin
 XArr:=VarArrayCreate([1,DataModule2.QMain.FieldCount],varVariant);
 XL:=CreateOLEObject('Excel.Application');
 XL.WorkBooks.add;
 XL.visible:=true;
 j := 1;
 DataModule2.QMain.First;
 while not DataModule2.QMain.Eof do
  begin
   i:=1;
   while i<=DataModule2.QMain.FieldCount do
    begin
     XArr[i] := DataModule2.QMain.Fields[i-1].Value;
     i := i+1;
    end;
   XL.Range['A'+IntToStr(j),
   CHR(64+DataModule2.QMain.FieldCount)+IntToStr(j)].Value := XArr;
   DataModule2.QMain.Next;
   j:=j+1;
  end;
 XL.Range['A1',CHR(64+DataModule2.QMain.FieldCount)+IntToStr(j)].select;
 XL.Selection.Font.Name:='Arial cur';
 XL.Selection.Font.Size:=10;
 XL.selection.Columns.AutoFit;
 XL.Range['A1','A1'].select;
end;
Подскажите кто знает
drongo666 вне форума Ответить с цитированием
Старый 13.05.2013, 09:11   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

XL.Range[...].Value :='abc'+#10+'123'+#10+'колдт';
и т.д.
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Excel - экспорт выбранной ячейки из DBGrid в Excel. wymkent Помощь студентам 0 16.05.2012 02:10
Вытянуть несколько значений в одну ячейку через запятую KApSuL Microsoft Office Excel 2 16.01.2012 18:02
Экспорт значений из нескольких документов Word в одну таблицу Excel для дальнейших расчетов. YJYNGK Microsoft Office Excel 0 30.10.2010 13:42
запись двух функций в одну ячейку (ВПР+ЕСЛИОШИБКА) grichanuk Microsoft Office Excel 2 17.11.2009 14:46
Извлечь в одну ячейку несколько значений из строки которые удовлетворяют заданному условию. Dorvir Microsoft Office Excel 5 08.04.2008 16:12