Имя: Пароль:
1C
1С v8
html ссылки в таблице Excel, сохраненной из 1С
0 vlad_161
 
11.03.14
17:13
Здравствуйте форумчане.

Столкнулся со следующей проблемой:
В 1С82 УТ 10.3 (с изменениями) формируется прайс-лист.
В поле описание сохраняется html-ссылка на описание на сайте:

ТаблицаВывода.Область(НС,НК).Текст="http://"+ИмяСайта+"/"+ТранслитДляИМ(Номенклатура.Наименование)+".html";);            
при сохранении в формате Excel поле отображается как текстовое.
Только после входа в ячейку для редактирования (Enter-ом или двойным кликом мыши) и подтверждения изменений ссылка становится активной и по клику открывается страница с описанием.

Что нужно сделать в 1С (свойство ячейки подправить или тип ячейки какой установить - не могу в справке найти) для чтобы после сохранения и открытия таблицы в Excel ссылки сразу били активными
1 DS
 
11.03.14
17:24
Как всегда поможет запись макроса. Дело одной минуты.
2 vlad_161
 
11.03.14
17:46
не могу понять как в 1С засунуть
то-то типа:

Range("K20").Select
    ActiveCell.FormulaR1C1 = _
        "http://site.ru/Multivarka-SHIVAKI-SMC-6353.html";
    Range("K20").Select
    Selection.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True
3 DS
 
11.03.14
18:03
ЕксельЛист.Hyperlinks.Add(ЕксельЯчейкаКудаНадоДобавитьСсылку, СсылкаВТекстовомФормате, , , ТекстОтображенияНеОбязательный);
4 vlad_161
 
11.03.14
21:23
а если таблица описана
    
ТаблицаВывода=Новый ТабличныйДокумент;
    
ФормаExcel =ОбработкаОбъект.ПолучитьФорму("ФормаExcel",,Новый УникальныйИдентификатор());
ТаблицаВывода = ФормаExcel.ЭлементыФормы.ТаблицаВывода;
и потом
ТаблицаВывода.Область(НС,НК).Текст="http://"+ИмяСайта+"/"+ТранслитДляИМ(Номенклатура.Наименование)+".html";;);
5 vlad_161
 
11.03.14
22:18
код подобный приведенному:
ЕксельЛист.Hyperlinks.Add(ЕксельЯчейкаКудаНадоДобавитьСсылку, СсылкаВТекстовомФормате, , , ТекстОтображенияНеОбязательный);

присутствует в процедуре сохранения в формат Excel, но тем не менее в ячейке ссылка как и описывал ранее не активна пока не зайдешь и не выйдешь из ячейки

Процедура ЗаписьExcel()
    ДиалогВыбораФайлов = Новый ДиалогВыбораФайла(РежимДиалогаВыбораФайла.Сохранение);
    ДиалогВыбораФайлов.Фильтр                        =    "Файл данных (*.xls)|*.xls";
    ДиалогВыбораФайлов.Расширение                    =    "xls";
    ДиалогВыбораФайлов.Заголовок                        =    "Выберите файл";
    Если Не ДиалогВыбораФайлов.Выбрать() тогда
        возврат;
    КонецЕсли;
    ЭлементыФормы.ТаблицаВывода.Записать(ДиалогВыбораФайлов.ПолноеИмяФайла,"xls");
    
    Попытка
        Ексель = Новый COMОбъект("Excel.Application");
    Исключение
        Ексель.Quit();
        Сообщить(ОписаниеОшибки());
         Возврат;
    КонецПопытки;
    Книга = Ексель.WorkBooks.Open(ДиалогВыбораФайлов.ПолноеИмяФайла);
    Лист = Книга.WorkSheets(1);
    ВсегоКолонок = Лист.Cells(3,1).SpecialCells(11).Column;
    ВсегоСтрок = Лист.Cells(1,1).SpecialCells(11).Row;
    Для Строка = 1 по ВсегоСтрок цикл
        Ячейка = Лист.Cells(Строка,2);
        Значение = СокрЛП(Лист.Cells(Строка,ВсегоКолонок).Value);
        если ПустаяСтрока(Значение) тогда
            Лист.Cells(Строка,ВсегоКолонок).Value="";
            Продолжить;
        конецЕсли;
        
                Лист.Hyperlinks.Add(Ячейка,Значение,,);
        
                Лист.Cells(Строка,ВсегоКолонок).Value="";
    конецЦикла;
    
    Попытка
        Ексель.DisplayAlerts = False;
                 Книга.SaveAS(ДиалогВыбораФайлов.ПолноеИмяФайла);
    Исключение
                 Сообщить(ОписаниеОшибки()+" Файл не сохранен!");
    КонецПопытки;
    Ексель.ActiveWorkbook.Close();
    Ексель.Quit();
    Ексель=0;
КонецПроцедуры
6 vlad_161
 
11.03.14
23:58
разобрался, в приведенном коде гиперссылки создавались лишь для второго столбца, поправил, все нормально,    
DS спасибо