На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Правила раздела:

  • Перед тем, как задать вопрос, желательно почитать документацию и воспользоваться поиском.
  • Когда задаёте вопрос, то обязательно указывайте платформу (7.7, 8.0, 8.1, 8.2, etc), причем желательно в заголовке. Если речь идёт о типовой конфигурации, то указывайте её название и релиз. Текущие версии можно посмотреть здесь.
  • Ещё раз напоминаем о необходимости соблюдать не только правила, но и законы. Уважайте авторские права.

Высказать своё мнение о модераторах раздела можно здесь: evGenius
  
> 1С и документы Excel , 1С 8.2 самописная конфа
    Здравствуйте, коллеги.
    Появилась задача заполнения пачки ексель документов (10 штук) данными и сохранение этих данных в папке пользователя.
    Хотелось бы обсудить варианты решения такой задачи.
    Решение в лоб - хранить шаблоны доков на сервере, заполнять и отправлять на клиента.

    Может как-то еще это можно сделать?
      А нужно именно по шаблону? Перевести шаблон в mxl не вариант?
        Цитата evGenius @
        Перевести шаблон в mxl не вариант?

        Не вариант. Каждый документ имеет свое форматирование - эмблемы, фирменные цвета и пр. Итог работы - набор документов в формате Excel с заполненными полями.
          Имхо, наоборот - вариант. Потому что если будешь работать именно с шаблонами Excel, то для этого
          Цитата kosten @
          хранить шаблоны доков на сервере, заполнять и отправлять на клиента.

          тебе надо будет устанавливать excel на сервер.
          Я бы формировал все это дело как обычный отчет, с получением шаблона из макета, а после формирования сохранял бы с расширением ".xls*".
          Да и не всегда удобно использовать шаблоны excel. Уж очень он умный, зараза, любит самостоятельно определять тип данных в ячейках, форматировать их как ему заблагорассудится. Я уже давно стараюсь использовать что угодно, но не excel.
            Цитата Rust @
            тебе надо будет устанавливать excel на сервер.

            Установлен.
            Цитата Rust @
            Я бы формировал все это дело как обычный отчет, с получением шаблона из макета, а после формирования сохранял бы с расширением ".xls*".

            Мне такие документы переводить в табличные документы совсем не хочется.
              Ну если проблем с установкой офиса на сервер нет и есть готовые шаблоны экселя, тогда вообще не вижу проблем
                Цитата Rust @
                тогда вообще не вижу проблем

                Есть примеры, как ексель и ворд заполнять?
                Помню, что в документе надо расставить метки, которые потом надо заменять своими значениями.
                  Ну как вариант можешь именовать ячейки. Или просто в нужные ячейки проставить специальные строки типа "#ТутБудетНомерТелефона#" и потом искать их в документе.
                    Имхо вариант с именованием ячеек оптимальный. Сам его не раз использовал.
                      Цитата Rust @
                      Имхо вариант с именованием ячеек оптимальный. Сам его не раз использовал.

                      Вот этот вариант мне тоже больше нравится. А вот замена своих меток не айс.
                        Кто-нибудь в курсе, как сделать копию строки Excel из 1С?

                        Добавлено
                        Уже разобрался 8-)
                          Цитата evGenius @
                          Ну как вариант можешь именовать ячейки. Или просто в нужные ячейки проставить специальные строки типа "#ТутБудетНомерТелефона#" и потом искать их в документе.

                          Есть пример поиска и замены для Екселя?
                            В примере показан поиск в диапазоне ячеек A1:A500 значения 2 и замена его на 5.
                            Думаю, как применить в 1С разберешься сам :)
                            ExpandedWrap disabled
                              With Worksheets(1).Range("a1:a500")
                                  Set c = .Find(2, lookin:=xlValues)
                                  If Not c Is Nothing Then
                                      firstAddress = c.Address
                                      Do
                                          c.Value = 5
                                          Set c = .FindNext(c)
                                      Loop While Not c Is Nothing And c.Address <> firstAddress
                                  End If
                              End With
                              Rust, спасибо.
                              Нашел еще такой вариант.
                              0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                              0 пользователей:


                              Рейтинг@Mail.ru
                              [ Script execution time: 0,0315 ]   [ 15 queries used ]   [ Generated: 5.02.25, 06:07 GMT ]