|
Проблема. Из экселя загружается не то. | ☑ | ||
---|---|---|---|---|
0
Серов
17.01.12
✎
15:31
|
Дело в том, что такого совсем нет в экселе. Числа другие, столбцы не те. Такое чувство, что есть скрытый лист. Пробовал копировать в другой файл, там все ок. Но пользователи будут этот присылать и хотелось бы разобраться.
|
|||
1
1с-кин
17.01.12
✎
15:34
|
вы с какого листа грузите? и вообще, с той ли книги?
|
|||
2
Серов
17.01.12
✎
15:35
|
да с той, в конце ставлю визибл=1, чтобы удостоверится. Гружу с первого и он там один (по крайне мере я один вижу)
|
|||
3
dk
17.01.12
✎
15:37
|
может чуток кода загрузки покажешь?
|
|||
4
dk
17.01.12
✎
15:38
|
про отладчик слышал?
|
|||
5
1с-кин
17.01.12
✎
15:42
|
(2) один - не один, а грузится всегда с одного указанного листа (механизм такой), если только принудительно в коде не укажешь циклом перебор и загрузку с других листов.
|
|||
6
1с-кин
17.01.12
✎
15:43
|
+ защищенные листы вообще вроде только по ADO увидишь, по Automation не позволит...
|
|||
7
Серов
17.01.12
✎
15:44
|
(3) Вот код
Эксель = Новый COMОбъект("Excel.Application"); Книга = Эксель.WorkBooks.Open(ПутьКФайлу); Лист = Книга.WorkSheets(1); НомерСтроки=6; ВсегоСтрок=Эксель.Cells(1,1).SpecialCells(11).Row; Эксель.Application.visible=1; Как видите, все у меня просто. Откуда только что берется. |
|||
8
dk
17.01.12
✎
15:46
|
ну а где данные-то читаешь?
|
|||
9
Серов
17.01.12
✎
15:56
|
(8) В цикле, например такой строчкой
Стр.Остаток=Число(СокрЛП(Лист.Cells(а, 4).Value)); |
|||
10
Tatitutu
17.01.12
✎
16:01
|
МолодЭц!!!
Лист у тебя есть а для чего он у тебя есть ? |
|||
11
Серов
17.01.12
✎
16:02
|
(10) не понял
|
|||
12
dk
17.01.12
✎
16:03
|
ну выведи какую-нить ячейку и название лист
|
|||
13
Tatitutu
17.01.12
✎
16:05
|
вот это
ВсегоСтрок=Эксель.Cells(1,1).SpecialCells(11).Row; переделай (нет ссылки на твой нужный лист) как то так Диапозон = Эксель.Sheets(Лист).Cells; Строк =Диапозон.SpecialCells(11).Row; // строка последней ячейки Столбцов =Диапозон.SpecialCells(11).Column; // столбец последней ячейки |
|||
14
Серов
17.01.12
✎
16:06
|
(12) Вот! Выводит имя листа не такое, которое я вижу. Это скрытый лист? Как его можно увидеть?
|
|||
15
Серов
17.01.12
✎
16:07
|
Народ, как сделать активным лист по его имени, а не по номеру?
|
|||
16
Ковычки
17.01.12
✎
16:09
|
Лист = Книга.WorkSheets(ИмяЛиста);
Диапозон = Лист.Sheets(Лист).Cells; Строк =Диапозон.SpecialCells(11).Row; |
|||
17
dk
17.01.12
✎
16:09
|
Лист = Книга.WorkSheets("<Имя твоего листа>");
|
|||
18
Серов
17.01.12
✎
16:11
|
(17) Пробовал. Ошибка - к числу не может привести данное.
|
|||
19
Ковычки
17.01.12
✎
16:12
|
(16)
Лист = Книга.WorkSheets(ИмяЛиста); Диапозон = Лист.Cells; Строк =Диапозон.SpecialCells(11).Row; |
|||
20
Ковычки
17.01.12
✎
16:14
|
Листы = Книга.WorkSheets;
Для Сч = 1 По Листы.Count Цикл Лист = Листы.Item(Сч); Сообщить(Лист.Name); КонецЦикла; |
|||
21
1с-кин
17.01.12
✎
16:18
|
(14) выделяешь листы в Excel и делаешь "показать скрытые"
|
|||
22
Серов
17.01.12
✎
16:20
|
Народ, спасибо. Нашел скрытые листы. Они оказываются действительно есть :)
|
|||
23
Dmitry77
17.01.12
✎
16:27
|
открываю военную тайну сочетание ctrl + Page down прокручивает листы вправо, ctrl +page up влево.
|
|||
24
1с-кин
17.01.12
✎
16:30
|
(23) скрытые - это не только "за стрелочкой" которые :)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |