Модераторы: gambit, Partizan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Excel, занесение данных в шаблон, постраничный вывод 
:(
    Опции темы
Чердак
  Дата 9.11.2008, 17:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 195
Регистрация: 8.12.2004

Репутация: нет
Всего: нет



Доброе время суток.

Задача следующая стоит: формирование счета, товарной накладной и счет-фактуры в excel. На форме составляется список необходимых товаров и по кнопке этот список переносится в excel-ий файл. У меня есть шаблончики на эти файлы. Но я не знаю как оргнизовать красивый постраничный вывод. Чтобы поле итого было по каждой страничке и рамка заканчивалась, шапка добавлялась на новой стр. Как узнать конец странички в exel. Наверняка кто-то уже реализовывал подобную задачу, не могли бы поделиться примерчиками. И как в excele искать фразу и потом ее заменять (просто в шаблоне использую фразы: #NumDoc , #NameKlient ит.д. - которые необходимо заменить значениями)?
--------------------
PM MAIL   Вверх
Чердак
  Дата 10.11.2008, 17:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 195
Регистрация: 8.12.2004

Репутация: нет
Всего: нет



Как выполнить в екселе автоподбор высоты объединенных ячеек?

Это сообщение отредактировал(а) Чердак - 10.11.2008, 21:19
--------------------
PM MAIL   Вверх
Чердак
  Дата 11.11.2008, 00:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 195
Регистрация: 8.12.2004

Репутация: нет
Всего: нет



Вот нашел пример для Delphi:
Код

  procedure AutoFitMergedCellRowHeight(Rng: ExcelRange);
  var
    mergedCellRgWidth: Single;
    rngWidth, possNewRowHeight: Single;
    i: Integer;
  begin
    if Rng.MergeCells then begin
      // здесь использована самописная функция перевода стиля R1C1 в A1
      if xlRCtoA1(Rng.Row, Rng.Column) = xlRCtoA1(
        Rng.Range['A1', EmptyParam].Row, Rng.Range['A1', EmptyParam].Column)
        then Rng := Rng.MergeArea;
      with Rng do begin
        if (Rows.Count = 1) and (WrapText) then begin
          (Rng.Parent as _Worksheet).Application.ScreenUpdating[lcid] := False;
          rngWidth := Cells.Item[1, 1].ColumnWidth;
          mergedCellRgWidth := 0;
          for i := 1 to Columns.Count do
            mergedCellRgWidth := Cells.Item[1, i].ColumnWidth + MergedCellRgWidth;
          MergeCells := False;
          Cells.Item[1, 1].ColumnWidth := MergedCellRgWidth;
          EntireRow.AutoFit;
          possNewRowHeight := RowHeight;
          Cells.Item[1, 1].ColumnWidth := rngWidth;
          MergeCells := True;
          RowHeight := possNewRowHeight;
          (Rng.Parent as _Worksheet).Application.ScreenUpdating[lcid] := True;
        end; // if
      end; // with
    end; // if
  end; // procedure

// вызов
AutoFitMergedCellRowHeight(ASheet.Range['F3', EmptyParam]);



Как на C#, реализовать вот это:
Код

mergedCellRgWidth := Cells.Item[1, i].ColumnWidth + MergedCellRgWidth;

?  smile 
--------------------
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Разработка Windows Forms | Следующая тема »


 




[ Время генерации скрипта: 0.0728 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.