Экспорт в Execel

отредактировано October 2010 Раздел: FastReport 4.0
При экспорте отчета в эксель те ячейки, текст которых должен быть жирным, экспортируются с обычным форматированием. Хотя если экспортировать в RTF или PDF или же просто сделать предпросмотр, то жирный шрифт применяется нормально. Это я что-то не так делаю или дело в компоненте?


З.Ы. если возможно, исправьте ошибку в названии темы. Случайно сделал опечатку в слове Excel.

Комментарии

  • DiamondDiamond г. Ростов-на-Дону
    отредактировано 16:27
    Random написал: »
    При экспорте отчета в эксель те ячейки, текст которых должен быть жирным, экспортируются с обычным форматированием. Хотя если экспортировать в RTF или PDF или же просто сделать предпросмотр, то жирный шрифт применяется нормально. Это я что-то не так делаю или дело в компоненте?
    З.Ы. если возможно, исправьте ошибку в названии темы. Случайно сделал опечатку в слове Excel.
    Как вы применили стиль для TfrxMemo ? через теги?
  • отредактировано 16:27
    У frxMemoView стоит AllowHTMLTags в true. При построении отчета делаю следующее:
    Text = ""+strSomeVarialbe+"";

    Т.е. просто применяю HTML-стиль
  • DiamondDiamond г. Ростов-на-Дону
    отредактировано 16:27
    Random написал: »
    У frxMemoView стоит AllowHTMLTags в true. При построении отчета делаю следующее:
    Text = ""+strSomeVarialbe+"";

    Т.е. просто применяю HTML-стиль
    к сожалению с тегами непрокатит, надо ставить свойство текста для всего memo - тогда будет всё ОК
  • отредактировано 16:27
    Diamond написал: »
    к сожалению с тегами непрокатит, надо ставить свойство текста для всего memo - тогда будет всё ОК

    То есть я правильно понял: или вся таблица жирным шрифтом или вся таблица нежирным, так?
    И еще вопрос - почему тогда в ворд экспортирует нормально? Может есть какое-то решение выделить нужные мне ячейки отдельно от других в одной и той же таблице? Может быть цвет ячейки или что-то другое?
  • DiamondDiamond г. Ростов-на-Дону
    отредактировано 16:27
    Random написал: »
    То есть я правильно понял: или вся таблица жирным шрифтом или вся таблица нежирным, так?
    И еще вопрос - почему тогда в ворд экспортирует нормально? Может есть какое-то решение выделить нужные мне ячейки отдельно от других в одной и той же таблице? Может быть цвет ячейки или что-то другое?
    ну так почему же таблица? если будете применять жирный шрифт только для отдельно взятого memo.
    а по поводу сравнения экспорта в ворд и эксель думаю, что для ячейки экселя просто применяется стиль и св-ва соответствующего ей memo, а теги игнорируются.(но это только предположение)
  • отредактировано 16:27
    Diamond написал: »
    ну так почему же таблица? если будете применять жирный шрифт только для отдельно взятого memo.
    а по поводу сравнения экспорта в ворд и эксель думаю, что для ячейки экселя просто применяется стиль и св-ва соответствующего ей memo, а теги игнорируются.(но это только предположение)

    Так. Здесь надо разобраться. Для того, чтобы мне применить жирный шрифт только для отдельно взятого мемо, нужно чтобы каждая ячейка таблицы - была TfrxMemoView? Можно поподробнее про это?
  • отредактировано 16:27
    Предположу, что вы экспортируете через OLE экспорт. Он игнорирует HTML форматирование. Вам нужно убрать AllowHTMLTags и изменить свойство Font.Style = [fsBold].
  • DiamondDiamond г. Ростов-на-Дону
    отредактировано 16:27
    Random написал: »
    Так. Здесь надо разобраться. Для того, чтобы мне применить жирный шрифт только для отдельно взятого мемо, нужно чтобы каждая ячейка таблицы - была TfrxMemoView? Можно поподробнее про это?
    Нет. Жирный шрифт можно также применять и к отдельным ячейкам таблицы.
  • отредактировано 16:27
    У меня почему-то при использовании этого кода:
           if (ColumnIndex == 1)                                                        
           {           
                   if (Value.Pos("%bold%") != 0)
                   {                   
                           Memo.Font.Style = TFontStyles() <<fsBold;
                           Value = Value.SetLength(Value.Length()-6);                                                                                                               
                   }                                            
           }
    
    при построении отчета вылетает ошибка с текстом: EVariantTypeCastError 'Could not convert variant of type (OleStr) into type (Boolean)'
    Что я не так делаю?
  • отредактировано 16:27
    Даже если просто прописать строку:
    if (ColumnIndex == 1)
    Memo.Font.Style = TFontStyles() <<fsBold;

    Все равно ошибка: Could not convert variant of type (NULL) into type (Integer)
  • gpigpi
    отредактировано 16:27
    А если так (если это код скрипта отчёта):
    Memo.Font.Style = fsBold;
  • отредактировано 16:27
    gpi написал: »
    А если так (если это код скрипта отчёта):
    Memo.Font.Style = fsBold;

    Если так прописать, то ошибка пропадает - жирным делается без проблем. Но опять такие, если экспортировать в эксель, то форматирование жирным в экселе отсутствует. Еще почему-то ошибка появляется при построении отчета, если добавить в код вот это условие:

    if (Value.Pos("%bold%") != 0)

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.