Привет, планета! Не справляюсь сам, нужна Ваша помощь...
Есть файл xlsx, если сохранить его в csv, то он получается (условно) 177 мегабайт. В каждой строке в столбце № 8 находится артикул товара и по столбцам другая информация по нему (довольно часто ситуация такова, что есть ряд строк с одним артикулом). Необходимо усложнить процесс сохранения так, чтобы макрос делил его на куски по 9.8-9.9 Мб (нежелательно чтобы было меньше, но впринципе возможно по надобности — если несущественно меньше; но меньше 10 Мб должно быть строго). Последний файл уже понятно сколько получится. То есть сложностей несколько:
Есть файл xlsx, если сохранить его в csv, то он получается (условно) 177 мегабайт. В каждой строке в столбце № 8 находится артикул товара и по столбцам другая информация по нему (довольно часто ситуация такова, что есть ряд строк с одним артикулом). Необходимо усложнить процесс сохранения так, чтобы макрос делил его на куски по 9.8-9.9 Мб (нежелательно чтобы было меньше, но впринципе возможно по надобности — если несущественно меньше; но меньше 10 Мб должно быть строго). Последний файл уже понятно сколько получится. То есть сложностей несколько:
- Чтобы файлы делились только "блоками" (каждый набор строк, относящихся к одному артикулу — отдельный блок)
- Кажется, на vba нет функции, позволяющей получить текущий размер файла до его сохранения. А каждое сохранение — пара секунд... Какие есть тут идеи?
- Вообще круто было бы иметь возможность при каком-то промежуточно заполненном xlsx-файле иметь возможность понимать, сколько он будет весить в текстовом формате (csv или Текст Юникод). Есть у кого какие полезные мысли?..