|
v7: Проблема при формировании данных второго листа в Excel | ☑ | ||
---|---|---|---|---|
0
tgu82
15.11.13
✎
15:34
|
Лист.Range(Лист.Cells(2,1),Лист.Cells(4,1)).Select();
Microsoft Office Excel: Метод Select из класса Range завершен неверно В первом листе книги все работает прекрасно, а при переходе на второй лист - дает такую ошибку. данные заполняет без проблем, а вот объединение ячеек на втором листе почему-то делать не хочет |
|||
1
Chum
15.11.13
✎
15:38
|
зачем тебе селект, если мегри делается для рендж?
|
|||
2
tgu82
15.11.13
✎
15:41
|
(1) ну делал как в инете нашел. но ведь на первом листе все работает нормально же
|
|||
3
tgu82
15.11.13
✎
15:42
|
(1)
Лист.Cells(1,1).Value="№ п/п"; Лист.Cells(1,1).Font.Size=7; Лист.Range(Лист.Cells(1,1),Лист.Cells(4,1)).Select(); Excel.Selection.Merge(); Вот так у меня |
|||
4
dk
15.11.13
✎
15:53
|
с переменной лист не напутал во втором листе?
может ты в качестве ренджа для листа 2 указываешь ячейки с первого листа? |
|||
5
tgu82
15.11.13
✎
16:03
|
(4)
Вот у меня тоже такое ощущение, но Лист=""; Лист = Книга.WorkSheets(2); то есть 2-ой лист я установил чтобы с ним работать Лист.Cells(2,1).Value="№ п/п"; Вот так работает и значение присваивает Лист.Cells(2,1).Font.Size=7; Лист.Range(Лист.Cells(2,1),Лист.Cells(4,1)).Select(); Excel.Selection.Merge(); а вот эта конструкция на 2-м листе не работе |
|||
6
dk
15.11.13
✎
16:04
|
а Excel 1 открыт или 2?
|
|||
7
mikecool
15.11.13
✎
16:05
|
(5) так просто, в дополнение - сначала выводи данные в лист, а уже потом массово присваивай оформление областям - работает на порядок быстрее
|
|||
8
dk
15.11.13
✎
16:07
|
короче можно попробовать вместо Excel.Selection.Merge();
Лист.Application.Selection.Merge(); |
|||
9
tgu82
15.11.13
✎
16:10
|
(6) Книга открыта одна
|
|||
10
tgu82
15.11.13
✎
16:11
|
(8) Ошибка раньше появляется именно на range.select()
|
|||
11
tgu82
16.11.13
✎
12:45
|
В диспетчере задач даже если книга закрывает программно, все равно эксель почему-то висит в процессах. Я через паузу процесс убиваю и тем не менее все равно на втором листе она объединять ячейки принципиально не хочет
|
|||
12
tgu82
16.11.13
✎
12:47
|
ей кажется что это как бы продолжается первый лист видимо. Хотя перед работой со вторым листом я книгу сохраняю и опять открываю
|
|||
13
tgu82
16.11.13
✎
13:12
|
Похоже, что победил!!!
Лист = Книга.WorkSheets(2); Лист.Activate(); Вот так все работает. То есть первый лист как бы не надо активировать (причем не важно первый он или третий, важно что работаешь с ним сначала). А вот для работы с вторым листом (в смысле объединений и прочего) требуется не просто указать что работаешь с другим листом но и обязательно его активировать!!! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |