|
Загрузка в Excel | ☑ | ||
---|---|---|---|---|
0
bcosta
29.11.13
✎
10:27
|
Здравствуйте. Есть обработка, которая выгружает данные в 1С из Excel. Подскажите, что в ней нужно изменить, чтобы было наоборот - из 1С в Excel.
Попытка Состояние("Открытие Excel файла..."); XLSОбъектОсн = Новый COMОбъект("Excel.Application"); Исключение Сообщить("Не удалось загрузить MS Excel. " + Символы.ПС + ОписаниеОшибки(), СтатусСообщения.Важное); Возврат; КонецПопытки; Попытка XLSОбъект = XLSОбъектОсн.WorkBooks.Open("C:\файл.xls"); Исключение Сообщить("Не удалось открыть файл MS Excel. " + Символы.ПС + ОписаниеОшибки(), СтатусСообщения.Важное); Возврат ; КонецПопытки; Лист = XLSОбъект.Sheets(1); НомерПоследнейСтроки = Лист.UsedRange.Rows.Count + Лист.UsedRange.Row - 1; Для Сч = 1 ПО НомерПоследнейСтроки Цикл Состояние("Загружается " + Сч + " из " + НомерПоследнейСтроки); ОбработкаПрерыванияПользователя(); //Получение данных из ячеек таблицы Excel. Перем1 = СокрЛП(Лист.Cells(Сч, 1).Text); Перем2 = СокрЛП(Лист.Cells(Сч, 2).Text); Перем3 = СокрЛП(Лист.Cells(Сч, 3).Text); Далее какие-то вычисления; КонецЦикла; XLSОбъектОсн.Quit(); |
|||
1
Wobland
29.11.13
✎
10:27
|
ТабДок.Записать
|
|||
2
bcosta
29.11.13
✎
10:47
|
(1) Это, простите, куда впендюрить?)
|
|||
3
xenos
29.11.13
✎
10:49
|
Лист.Cells(Сч, 1).Text = СокрЛП(Перем1);
Лист.Cells(Сч, 2).Text = СокрЛП(Перем2); Лист.Cells(Сч, 3).Text = СокрЛП(Перем3); |
|||
4
bcosta
29.11.13
✎
10:52
|
(3) Т.е. тупо местами поменять, а остальное все так же?
Понятно. Тогда еще вопрос появился. Это мы берем из уже готового файла. А как создать файл, а потом записать в него? |
|||
5
butterbean
29.11.13
✎
10:53
|
(4) просто сделай таб. документ в 1С, заполни как обычно, потом Записать() и всё
|
|||
6
xenos
29.11.13
✎
11:11
|
(4)
Попробуй так: XLSОбъект = XLSОбъектОсн.WorkBooks.Add() XLSОбъект.Worksheets.Add.Name = "Ваше имя" .... XLSОбъект.SaveAs "C:\Temp\Ваше имя.xls" |
|||
7
bcosta
29.11.13
✎
11:15
|
(3) {ВнешняяОбработка.ВыгрузкаДанных.МодульОбъекта(51)}: Поле объекта недоступно для записи (Text)
Лист.Cells(Сч, 1).Text = СокрЛП(Перем); |
|||
8
xenos
29.11.13
✎
11:20
|
Попробуй Лист.Cells(Сч, 1).Value
|
|||
9
xenos
29.11.13
✎
11:21
|
+ Сч - случайно не равен 0?
|
|||
10
bcosta
29.11.13
✎
11:34
|
(8) Так получилось. Спасибо. Только появляется в конце окошко с вопросом, сохранить ли изменения в файле. Можно как-то это обойти?
|
|||
11
xenos
29.11.13
✎
12:19
|
(10) ХЗ поищи по VBA может найдешь
|
|||
12
13_Mult
29.11.13
✎
13:06
|
UP
|
|||
13
Lama12
29.11.13
✎
13:07
|
(12) Чего тут апать? Справка по VBA. Там даже по русски написано.
|
|||
14
bcosta
29.11.13
✎
13:48
|
(13) Я-то все уже понял. Мне ап не нужен был.
Всем спасибо. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |