Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.04.2016, 17:28   #1
nactyx
Форумчанин
 
Регистрация: 11.10.2010
Сообщений: 152
По умолчанию Форматирование ячеек Excel через Delphi

Добрый день! Снова нужна помощь.

Форматирую вот таким образом:
Код:
    ExcelApp.Range[ExcelApp.Cells[x+1,1],ExcelApp.Cells[x+1,6]].Select;
    ExcelApp.Selection.Borders.LineStyle := 1;
Но подобным образом форматируются ВСЕ листы, а мне нужно, чтобы форматирование на каждый лист было уникальным. Каким образом можно форматировать подобным образом, но не всю книгу, а конкретный лист?

Заранее благодарю за помощь!
nactyx вне форума Ответить с цитированием
Старый 05.04.2016, 17:40   #2
max_prorok
Форумчанин
 
Регистрация: 06.10.2011
Сообщений: 181
По умолчанию

Цитата:
Сообщение от nactyx Посмотреть сообщение
Добрый день! Снова нужна помощь.

Форматирую вот таким образом:
Код:
    ExcelApp.Range[ExcelApp.Cells[x+1,1],ExcelApp.Cells[x+1,6]].Select;
    ExcelApp.Selection.Borders.LineStyle := 1;
Но подобным образом форматируются ВСЕ листы, а мне нужно, чтобы форматирование на каждый лист было уникальным. Каким образом можно форматировать подобным образом, но не всю книгу, а конкретный лист?

Заранее благодарю за помощь!
Не знаю как в Delphi, а в С++ необходимо создать переменную листа (иерархия такова: переменная приложения, переменная книги, переменная листа). Готов предположить, что в Дельфи также. И тогда Cells вызывать для листа, а не для ExcellApp.
max_prorok вне форума Ответить с цитированием
Старый 06.04.2016, 09:11   #3
nactyx
Форумчанин
 
Регистрация: 11.10.2010
Сообщений: 152
По умолчанию

Если я напишу так:
Код:
    ExcelApp.Worksheets[n].Cells.Range[ExcelApp.Cells[x+1,1],ExcelApp.Cells[x+1,6]].Select;
    ExcelApp.Worksheets[n].Selection.Borders.LineStyle := 1;
то появляется вот такая ошибка:
nactyx вне форума Ответить с цитированием
Старый 06.04.2016, 09:36   #4
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Код:
ExcelApp.Worksheets[n].Cells.Range[ExcelApp.Worksheets[n].Cells[x+1,1],ExcelApp.Worksheets[n].Cells[x+1,6]].Select;
А так?
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 06.04.2016, 10:02   #5
nactyx
Форумчанин
 
Регистрация: 11.10.2010
Сообщений: 152
По умолчанию

Вот так:
Код:
ExcelApp.Worksheets[n].Cells.Range[ExcelApp.Worksheets[n].Cells[x+1,1],ExcelApp.Worksheets[n].Cells[x+1,6]].Select;
    ExcelApp.Selection.Borders.LineStyle := 1;
снова без ошибки, но так же форматирование первой идет на следующие.
nactyx вне форума Ответить с цитированием
Старый 06.04.2016, 10:06   #6
nactyx
Форумчанин
 
Регистрация: 11.10.2010
Сообщений: 152
По умолчанию

Разобрался. Спасибо!
nactyx вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Можно ли получить формат ячеек листа Excel через ADO BVladimir Microsoft Office Excel 3 20.06.2013 16:15
Форматирование Excel через Delphi VHomer Общие вопросы Delphi 2 22.02.2012 10:35
Форматирование ячеек в Exel средствами Delphi 7 Mutagena Помощь студентам 2 29.04.2010 12:40
Форматирование ячеек shmelvs Microsoft Office Excel 6 24.07.2008 10:24
Форматирование ячеек Andr Microsoft Office Excel 12 18.08.2007 20:15