serbanov Ответов: 1

C# - получение последней строки, используемой из определенного столбца


Всем привет,

Я здесь, чтобы снова попросить вас о помощи.

Мне нужно получить последнюю использованную строку из определенного столбца - я использую только индекс столбца, а не буквы для него, а также форматирую их с использованием разных цветов для ячеек.

Любое решение о том, как я мог бы получить последнюю использованную строку из определенного столбца ??

Что я уже пробовал:

int nInLastCol = xlWorkSheet.Cells.Find("*", System.Reflection.Missing.Value, System.Reflection.Missing.Value, System.Reflection.Missing.Value, Excel.XlSearchOrder.xlByColumns, Excel.XlSearchDirection.xlPrevious, false, System.Reflection.Missing.Value, System.Reflection.Missing.Value).Row;


Он возвращает мне последнюю колонку из моего листа, последнюю использованную строку в этом столбце.

Но мне нужна для этого особенно колонка не последняя..

lukeer

В какой среде вы находитесь?
WinForms? XAML? База данных? Какой?
Что такое xlWorkSheet? Это что, Экселл?

#realJSOP

Он использует Excel.Библиотека взаимодействия.

serbanov

Я использую WinForms. Теперь я кое что нашел :

int _lastUSEDrow = xlWorkSheet.Клеток[1, 3].EntireColumn.Найди("*",
Система.Отражение.Недостающий.Ценность,
Превосходить.XlFindLookIn.xlValues,
В Excel.XlLookAt.xlWhole,
Превосходить.XlSearchOrder.xlByRows,
Превосходить.XlSearchDirection.xlPrevious,
ложный,
Система.Отражение.Недостающий.Ценность,
Система.Отражение.Недостающий.Ценность).Ряд;

xlSheet-это мой рабочий лист из рабочей книги. Похоже, то, что я написал в этом комментарии, дает мне то, что я ищу. Я еще не представил его в качестве решения, я жду комментариев и предложений.

1 Ответов

Рейтинг:
1

#realJSOP

Вы не можете получить последнюю строку, используемую в определенном столбце, без итерации диапазона ячеек (от [column]1 до myWorksheet.UsedRange.Rows.Count) Назад, пока не найдете последнюю строку со значением.


Если вам просто нужно общее количество используемых строк, используйте myWorksheet.UsedRange.Rows.Count


serbanov

int _lastUSEDrow = xlWorkSheet.Клеток[1, 3].EntireColumn.Найди("*",
Система.Отражение.Недостающий.Ценность,
Превосходить.XlFindLookIn.xlValues,
В Excel.XlLookAt.xlWhole,
Превосходить.XlSearchOrder.xlByRows,
Превосходить.XlSearchDirection.xlPrevious,
ложный,
Система.Отражение.Недостающий.Ценность,
Система.Отражение.Недостающий.Ценность).Подряд; - Джон , как насчет этого кода ? а вы не пробовали? мне кажется, что он показывает мне наиболее часто используемую строку по определенному индексу столбца, в данном примере для столбца № 3 !