IPB
ЛогинПароль:

> ВНИМАНИЕ!

Прежде чем задать вопрос, смотрите FAQ.
Рекомендуем загрузить DRKB.

> Объединение ячеек в экселе, Объединить одинаковые значения
Atreides
сообщение 25.10.2011 21:44
Сообщение #1


Ветеран Броуновского Движения
***

Группа: Пользователи
Сообщений: 281
Пол: Мужской
Реальное имя: Сергей

Репутация: -  0  +


Уважаемые, подскажите, как выполнить проход по столбцу (столбец всего один) в эксельном файлике и при нахождении подряд одинаковых значений объединить их в одну ячейку? И как можно определить номер последней строки с записью. Или при нахождение значения "ИТОГО" закрасить сроку от итого до последнего столбца. Все данные на одном первом листе.

Сообщение отредактировано: Atreides - 25.10.2011 22:23


Прикрепленные файлы
Прикрепленный файл  ______1.xls ( 27 килобайт ) Кол-во скачиваний: 370


--------------------
Отрадно спать, отрадней камнем быть, О, этот век, преступный и постыдный, Не жить, не чувствовать - удел завидный. Прошу, молчи, не смей меня будить!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
Atreides
сообщение 26.10.2011 16:01
Сообщение #2


Ветеран Броуновского Движения
***

Группа: Пользователи
Сообщений: 281
Пол: Мужской
Реальное имя: Сергей

Репутация: -  0  +


А если нужно использовать только нижнюю толстую линию выделения под итогами. И толстую правую линию выделения в каждом столбце данных. Пробовал сделать, по ошибке вылетаю. Кинул пример для наглядности.
Код
begin
  XLApp.DisplayAlerts := False; //отмена ругани экселя

  iFirstRow := 10; //  начало поиска

    repeat
     CurrValue := XLApp.Cells.Item[iFirstRow, 1].Value;
     iCurrentRow := iFirstRow + 1;
     while  (CurrValue <> Unassigned) and
           (XLApp.Cells.Item[iCurrentRow, 1].Value = CurrValue) do
     begin
        Inc(iCurrentRow);
     end;
     //закрашивание строк "итого"
     XLApp.Range[Format('B%d', [iCurrentRow-1]), GetCellAddress(ColCount, iCurrentRow-1)].Interior.Color:=rgb(255,255,153);
     //XLApp.Range[Format('B%d', [iCurrentRow-1]), GetCellAddress(ColCount, iCurrentRow-1)].Borders.xlEdgeBottom.LineStyle := xlContinuous;
     //XLApp.Range[Format('B%d', [iCurrentRow-1]), GetCellAddress(ColCount, iCurrentRow-1)].Borders.xlEdgeBottom.Weight := xlMedium;
     //Report.Range[Format('B%d', [iCurrentRow-1]), GetCellAddress(ColCount, iCurrentRow-1)].Borders.Weight := xlMedium;
     //группировка значений
     XLApp.Range[ Format('A%d:A%d', [iFirstRow, iCurrentRow - 1]) ].MergeCells := True;
     XLApp.Range[ Format('A%d:A%d', [iFirstRow, iFirstRow]) ].HorizontalAlignment := xlCenter;
     XLApp.Range[ Format('A%d:A%d', [iFirstRow, iFirstRow]) ].VerticalAlignment := xlCenter;
     iFirstRow := iCurrentRow;
  until CurrValue = Unassigned;

end;


Прикрепленные файлы
Прикрепленный файл  _______.xls ( 24 килобайт ) Кол-во скачиваний: 244


--------------------
Отрадно спать, отрадней камнем быть, О, этот век, преступный и постыдный, Не жить, не чувствовать - удел завидный. Прошу, молчи, не смей меня будить!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 14.08.2025 15:51
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"