Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.76/29: Рейтинг темы: голосов - 29, средняя оценка - 4.76
4 / 2 / 2
Регистрация: 14.12.2014
Сообщений: 71
1

Обращение к листу Excel по имени

23.01.2018, 19:54. Показов 5632. Ответов 5
Метки нет (Все метки)

Добрый день!
Есть такой код
C#
1
2
3
4
5
6
7
8
9
10
string workpath = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location) + "\\Готовые файлы\\";//папка с программой
 Excel.Application ObjExcel = new Excel.Application();
            Excel.Workbook ObjWorkBook;
            Excel.Worksheet ObjWorkSheet;
            ObjWorkBook = ObjExcel.Workbooks.Add(workpath + @"г. Дмитров, Махалино, дом 25.xls");
            //Таблица.
 
            ObjWorkSheet = (Excel.Worksheet)ObjWorkBook.Sheets[1];//обращение по индексу
            ObjWorkSheet.Cells[1, 2].Value = kodi[0];
            ObjWorkBook.Save();
Нужно обратиться к листу по имени, а не по индексу, лист скрыт, всего листов в книге 4, обратиться нужно к листу "ОпцииПеречня" и записать в ячейку B1 данные: kodi[0].
Благодарна за любую помощь. Спасибо!
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.01.2018, 19:54
Ответы с готовыми решениями:

Обращение к листу по имени в Microsoft.Office.Interop.Excel
Судя по всему так делать нельзя: Excel.Worksheet Sheet =...

Обращение к листу по его кодовому имени
Народ помогите пожалуйста, не могу понять как обратиться к листу по его кодовому имени через...

Обращение к листу с графиками
Цель следующая. Есть документ с листами: Лист с графиком, лист с данными, лист с графиком, лист с...

Обращение к листу через InputBox
Подскажите пожалуйста как из тела макроса обратиться к определенному листу введенному в InputBox...

5
287 / 286 / 108
Регистрация: 04.09.2010
Сообщений: 638
23.01.2018, 22:08 2
Лучший ответ Сообщение было отмечено Aiky как решение

Решение

Попробуйте так:
C#
1
ObjWorkSheet = (Excel.Worksheet)ObjWorkBook.Sheets.get_Item("ОпцииПеречня");
1
970 / 352 / 135
Регистрация: 27.10.2006
Сообщений: 763
24.01.2018, 11:51 3
Лучший ответ Сообщение было отмечено Aiky как решение

Решение

либо так

C#
1
ObjWorkSheet = (Excel.Worksheet)ObjWorkBook.Worksheets["ОпцииПеречня"];
Добавлено через 4 минуты
kesean, там нужны квадратные скобки вокруг названия листа, круглые, думаю не подойдут
1
4 / 2 / 2
Регистрация: 14.12.2014
Сообщений: 71
24.01.2018, 12:40  [ТС] 4
kesean, Pavel55, Спасибо вам обоим, подошли оба варианта!
0
287 / 286 / 108
Регистрация: 04.09.2010
Сообщений: 638
24.01.2018, 15:10 5
Цитата Сообщение от Pavel55 Посмотреть сообщение
kesean, там нужны квадратные скобки вокруг названия листа, круглые, думаю не подойдут
Я не проверял, но это, вроде как функция.
0
970 / 352 / 135
Регистрация: 27.10.2006
Сообщений: 763
24.01.2018, 15:11 6
ну, раз у ТС получилось, значит при использовании get_Item нужно использовать круглые скобки
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.01.2018, 15:11

Обращение к листу через переменную
День добрый, форумчане! Столкнулся вот с какой проблемой... При задании переменной через...

Обращение к определённому листу и чтение из него ячеек
Подскажите, как обратиться к определённому листу и прочитать из него нужный массив ячеек и потом...

Обращение к массиву или листу для вставки в строку
Всем привет Хочу вытащить отдельный элемент массива в консоль using System; using...

Как обратиться к листу, но не указывая его имени?
Подскажите, как обратиться к листу, но не указывая его имени. т.е. Private Sub...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru