Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Radioaktiv
0 / 0 / 4
Регистрация: 09.10.2015
Сообщений: 306
1

Как при экспорте делать перевод содержимого ячейки на новую строку?

27.12.2016, 11:58. Просмотров 208. Ответов 6
Метки нет (Все метки)

Подскажите как при экспорте делать переход содержимого ячейки на новую строку, т.е. в гриде у меня в первом столбце данные выглядят вот так

Delphi
1
2
3
4
5
ФИО
Должность
 
ФИО
Должность
когда я экспортирую в excel то записис в первом столбце в ячеках в одну строку вот так :

Delphi
1
2
3
ФИО Должность
 
ФИО Должность
а мне надо чтобы между фио и должность стоял символ
Delphi
1
CHR(13)
пробовал сделать вот так но ничего не выходит

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
   if (row>0) and (col=0) then
        begin
       // ShowMessage(egrid.Cells[0, Row]);
 
         //ShowMessage(inttostr(Row));
         stroka:= egrid.Cells[0, Row];
         N:=Pos('.', egrid.Cells[0, Row])  ;
               Insert(CHR(13), stroka, n+3);
         //ShowMessage(stroka);
        //Sheett.Cells[Row + 6, Col +1]:=stroka;
 
        end
вот полностью код

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 for Col:= 0 to egrid.ColCount -1 do
     for Row:= 0 to egrid.RowCount -1 do
      begin
        if (row>0) and (col=0) then
        begin
         stroka:= egrid.Cells[0, Row];
         N:=Pos('.', egrid.Cells[0, Row])  ;
               Insert(CHR(13), stroka, n+3);
        end
        else  Sheett.Cells[Row + 6, Col +1]:=egrid.Cells[Col, Row];
        Sheett.Cells[Row + 6, Col +1].RowHeight :=31.5;
        Sheett.Cells[Row + 6, Col +1].Borders.LineStyle:=1;
        Sheett.Cells[Row + 6, Col +1].WrapText:=True;
        Sheett.Cells[Row + 6, Col +1].HorizontalAlignment:=3;
        Sheett.Cells[Row + 6, Col +1].VerticalAlignment:=1;
        progress.Position:=progress.Position + 1;
        Application.ProcessMessages;
     end;
Добавлено через 1 час 22 минуты
никто не сталкивался с такой проблемой?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.12.2016, 11:58
Ответы с готовыми решениями:

Перевод каретки на новую строку
С помощью какой функции каретка переводится на новую стоку?

Автоматический перенос выходящего за рамки ячейки текста на новую строку
Доброго времени суток, уважаемые форумчане! Вопрос значит такой. Как...

Перевод на новую строку длинного SQL-запроса
Пишу SQL запрос, он очень длинный,как продолжить его на новой строке? Спасибо!

При экспорте отчета в Word первая запись добавляется в строку с заголовками
Всем привет образовалась проблема, при экспорте данных из dbgrid в ворд, первая...

StringGrid, как сохранить цвет при экспорте?
Добрый день! Помогите мне пожалуйста. у меня есть stringgrid закрашиваю его...

6
krapotkin
3414 / 3021 / 1047
Регистрация: 14.04.2014
Сообщений: 14,659
Записей в блоге: 15
27.12.2016, 12:24 2
1.вставка символа в строку проще
s:= s1+#13+s2;

2. Если не ошибаюсь в Excel используется не 13 а 12
0
Radioaktiv
0 / 0 / 4
Регистрация: 09.10.2015
Сообщений: 306
27.12.2016, 13:31  [ТС] 3
так?

Delphi
1
2
3
4
5
  stroka:= egrid.Cells[0, Row];
         N:=Pos('.', egrid.Cells[0, Row])  ;
               Insert(CHR(12), stroka, n+3);
         //ShowMessage(stroka);
        Sheett.Cells[Row + 6, Col +1]:=stroka;
выдает то что на картинке
0
Миниатюры
Как при экспорте делать перевод содержимого ячейки на новую строку?  
krapotkin
3414 / 3021 / 1047
Регистрация: 14.04.2014
Сообщений: 14,659
Записей в блоге: 15
27.12.2016, 13:48 4
у меня нет Excel не могу проверить. у меня Libre Office, он вставляет стандартные для Windows #13#10

ну или легко ведь глянуть, что он там вставляет
скопируйте ячейку и вставьте в едит в делфи. в цикле посимвольно разберите содержимое едита
1
Radioaktiv
0 / 0 / 4
Регистрация: 09.10.2015
Сообщений: 306
27.12.2016, 13:49  [ТС] 5
Спасибо, разобрался сам #10 перенос
0
Radioaktiv
0 / 0 / 4
Регистрация: 09.10.2015
Сообщений: 306
27.12.2016, 14:09  [ТС] 6
а не подскажите как сделать при экспорте вот такую настройку
0
Миниатюры
Как при экспорте делать перевод содержимого ячейки на новую строку?  
krapotkin
3414 / 3021 / 1047
Регистрация: 14.04.2014
Сообщений: 14,659
Записей в блоге: 15
27.12.2016, 21:02 7
заведите отдельную тему
1
27.12.2016, 21:02
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.12.2016, 21:02

брать при каждом клике новую строку
for i:=0 to Memo1.Lines.Count -1 do begin IP:= Copy(Proxy,1,Pos(':',Proxy)-1);...

Переход каретки на новую строку при вставке
Как сделать чтобы при вставке из буфера обмена (ctrl+v или правой кнопкой мыши...

Перевод содержимого ячейки StringGrid в строку char.
Здорова. Помогите плиз перевести UnicodeString в массив символов char (строка)....


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru