Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Общие вопросы по .NET и C# > Как задать смещение в Excel


Автор: VisMaster 23.9.2007, 20:51
Задача такая: в Excel книге известен номер строки с которой надо начинать,  мне нужно на каждом шаге цикла смещаться на одну строку вниз. 

Помогите пожалуйста, если кто знает как это сделать!!!

Автор: thomas 23.9.2007, 21:06
VisMaster, 
приветствую.
Цитата

как это сделать

Открыть Excel, запустить запись макроса и произвести смещение на одну клетку вниз, остановить запись макроса и посмотреть на код. 
Всё.  smile 

ЗЫ и раз ты пишешь на C# почитай http://www.gotdotnet.ru/LearnDotNet/NETFramework/22054.aspx  smile 

Автор: archeg 23.9.2007, 22:22
thomas, прав, хотя я так не делал. Там с названий более-менее понятно что делает метод) щас точно не скажу, но там в Range есть метод начинающийся на get_ - там по имени метода и названию двух параметров (они типа int долны быть, а метод возвращает get) ясно))

Скорее всего get_Offset  smile На компе нету ни VSTO ни проекта нужно на работе смотреть

Автор: zaver 23.9.2007, 22:44
Цитата

Скорее всего get_Offset   На компе нету ни VSTO ни проекта нужно на работе смотреть

я вобсче не представляю, как мелокомякие думали получать ссылки на ячейки в Excel'e, этот метод get_ ..., о котором ты говоришь (сам название забыл, надо на работе посмотреть smile ), не предназначен для пользователя. где-то MSDN написано, что он чисто служебный, и просто так получилось, что он доступен разработчику. хотя никто не запрещает им пользоваться. просто есть какой-то нормальный метод доступа к ячейкам, который знают только избранные девелоперы майкрософта.

Автор: archeg 23.9.2007, 22:50
Цитата(zaver @  23.9.2007,  22:44 Найти цитируемый пост)
я вобсче не представляю, как мелокомякие думали получать ссылки на ячейки в Excel'e, этот метод get_ ..., о котором ты говоришь (сам название забыл, надо на работе посмотреть  ), 

ы. Ну мне кажется что некоторые вещи в M$ разрабатывают совсем разные люди. Первые пишут FrameWork, CLR, JIT, VS, а вторые занимаются такими вещами как кпримеру XNA и VSTO. Если забыть про то что я вряд ли дотягиваю по складу ума до уборщика из майкрософта, то я бы назвал первых жуть умными, а вторых жуть тупыми

Автор: VisMaster 25.9.2007, 13:34
thomas- в том то и дело что прежде чем сюда писать я так и делал, только вот не нашел как в EXCEL зыдать смещение..

Сделал так как сказал archeg:

Цитата

range = range.get_Offset("1", "0");


Всем спасибо большое за помощь!!

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)