Fish_sub
Этот способ понятен, я его реализовал, но думал, что есть решение проще, но не смог его нигде найти. Копирование данных с помощью цикла по ячейкам не очень хороший вариант, т.к. он очень ресурсозатратный.
А ты знаешь, что каждая ячейка хранит свой формат? Ты не можешь взять пачку ячеек и куда-то там скопировать, потому что у них могут быть разные форматы. Тысяча ячеек - тысяча форматов. Каждый формат нужно брать и копировать тоже. Поэтому там и нет этих методов. Если они и бывают где-то, они так же строятся на этом переборе ячеек по одной штуке.
Fish_sub
А если 200 000 строк?
Там сам Excel повиснет, потому что он точно так же разбирает эти форматы ячеек. Он не повиснет только потому, что он работает с листом как с разреженным массивом. То есть он работает с небольшой областью, которую вот на экране видно, а всё остальное он обрабатывает, когда туда экран доходит только.
Поэтому к тебе вопрос: а с какого хера у тебя большие данные (ну, назовём их так, хотя это мелкие данные) хранятся в Excel'евском формате?
Fish_sub
есть решение проще, но не смог его нигде найти
Потому что никто с этим так не работает. Поэтому ты и не смог найти. Запомни: Excel - это не средство для работы с базами данных, а это просто параша для бухгалтерш всяких тупых, и формат этот соответствующий. Красивые ячейки можно рисовать, а большие данные обрабатывать нельзя.
Ты должен перегнать это всё в нормальный формат, в какую-нибудь базу данных, и работать с этими данными в базе данных средствами системы управления базами данных (СУБД). Можешь в CSV перегнать и с CSV работать. Можешь в текст перегнать и работать с текстовым файлом. Но в xls не надо ключик искать, там его нет. XLSX ещё можно распаковать и заморочиться там с сырыми данными ячеек, там не сложно, но обычно это нафиг не надо делать.
Если у тебя там бухгалтерша образовалась, то ты потом, поработав с этими данными нормально, перегоняешь это для этой тупой бухгалтерши в Excel'евский формат. Сначала из него перегоняешь в базу, потом работаешь с ними, а потом обратно перегоняешь результат, чтобы эта тупая бухгалтерша могла открывать это у себя в тупой программе этой. Всякие там биологи с молекулами ДНК, математики со всякими числовыми гипотезами, физики со всякими атомами, астрономы со всякими звёздными расстояниями, экономисты со своими котировками - это всё из той же оперы. Не нужно идти за ними на поводу. Они в компах вообще нули полные. Поэтому они не знают, чем данные нужно обрабатывать. Они в этом ничего не смыслят. Они тебе будут про Excel втирать, что это классная программа и в ней очень классно всё хранить.