Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как удалить линию (Row) в Excel ? Excel C# Rows 
:(
    Опции темы
tht
  Дата 29.11.2008, 21:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 118
Регистрация: 10.5.2006

Репутация: нет
Всего: 1



мне нада удалить строку целиком.
я делал так:
Код

Range = (Range)Worksheet[1].Cells[2,2];
Range.Delete(XlDeleteShiftDirection.xlShiftUp);

в результате удаляется только ячейка по координатам "2B". 

если делаю так:
Код

Range = (Range)Worksheet[1].Rows[2,2]; // тут ошибка возникает.
Range.Delete(XlDeleteShiftDirection.xlShiftUp);

то по первой строчке, где Rows,  идет ошибка.

в общем, мне просто надо удалить строку, точнее линию, со всеми входящими в нее ячейками.
можно конечно придумать цикл который будет все ячейки в линии удалять, но это как-то не правильно.
надо чтоб линия целиком удалялась.

заранее спасибо.

Это сообщение отредактировал(а) tht - 29.11.2008, 21:29
PM MAIL   Вверх
Bishop
Дата 30.11.2008, 00:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 188
Регистрация: 3.6.2005
Где: Минск, Беларусь

Репутация: 6
Всего: 16



tht, 
Цитата
Range = (Range)Worksheet[1].Rows[2,2]; // тут ошибка возникает.

Дык:
Код
Range = (Range)Worksheet[1].Rows[2];

PM WWW ICQ   Вверх
tht
Дата 30.11.2008, 10:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 118
Регистрация: 10.5.2006

Репутация: нет
Всего: 1



тогда вылетает такая ошибка
Error    1    No overload for method 'this' takes '1' arguments
понимаешь там в Rows тоже два параметра как и в Cells[X,X];
PM MAIL   Вверх
Bishop
Дата 30.11.2008, 21:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 188
Регистрация: 3.6.2005
Где: Минск, Беларусь

Репутация: 6
Всего: 16



tht, действительно. Я просто проверял в PowerShell:
Код
$excel = New-Object -comObject Excel.Application
$excel.Workbooks.PSBase.GetType().InvokeMember("Add", "InvokeMethod", $null, $excel.Workbooks, @(), $null)
$excel.visible = $true
# Тут ввожу несколько строк
$ws =  $excel.Workbooks.Item(1).Worksheets.Item(1)
$row = $ws.Rows.Item(2)
$row.PSBase.GetType().InvokeMember("Delete", "InvokeMethod", $nul, $row, $null, $null)


Можно так:
Код
Range rng = ((excel.Workbooks[1].Worksheets[1] as Worksheet).Cells[2, 2] as Range).EntireRow;
rng.Delete(XlDeleteShiftDirection.xlShiftUp);


Это сообщение отредактировал(а) Bishop - 30.11.2008, 21:22
PM WWW ICQ   Вверх
tht
Дата 1.12.2008, 16:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 118
Регистрация: 10.5.2006

Репутация: нет
Всего: 1



что-то не получается...
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0439 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.