Цитата |
---|
Jack Famous написал: инструмента для пересбора |
Цитата |
---|
Jack Famous написал: Очень не хватает твоей реализации сцепки по условию |
«Бритва Оккама» или «Принцип Калашникова»?
28.04.2024 10:48:49
«Бритва Оккама» или «Принцип Калашникова»?
|
|||||
|
27.04.2024 21:27:34
«Бритва Оккама» или «Принцип Калашникова»?
|
|||||
|
27.04.2024 18:46:41
Jack Famous, привет!
По твоей теме, можно кратко: 1.Почему не подходит фильтр из нашей библы? 2.Какой инструмент написанный на С++, ты думаешь будет широким в применении, кратко, концепцию?
Изменено:
«Бритва Оккама» или «Принцип Калашникова»?
|
|
|
27.04.2024 08:40:54
18 модулей против 1 у Васи ~380 строк кода (из них можно смело вычесть примерно 20 строк, т.к. это атрибуты Rubberduck) против ~100 у Васи".
Изменено:
«Бритва Оккама» или «Принцип Калашникова»?
|
|||
|
23.04.2024 17:43:37
AndyF, спасибо за тесты. Интересно, работают ли другие XLL в этой конфигурации. Нужно найти еще какую либо и протестировать
Складывается впечатление, что это проблема на стороне Excel. 2007 этот первая версия с увеличенным количеством строк и новым типом данных в C API Excel - XLOPER12. Я использую этот тип. Возможно это как -то взаимосвязано.
Изменено:
«Бритва Оккама» или «Принцип Калашникова»?
|
|
|
20.04.2024 17:27:20
Может есть возможность в другой версии Excel. 2007 не очень удачный с меню и с его настройкой, как по мне. Опять же х64 может использовать оперативки больше чем 2 Гбайт. Я из-за этого и перешел на х64.
Изменено:
«Бритва Оккама» или «Принцип Калашникова»?
|
|||
|
20.04.2024 14:11:44
AndyF, обычно это ошибка означает разную разрядность Excel и XLL. Попробуйте х64 поставить.
Проблем ранее с Win7 не замечал. Тестировал ранее: Win7х64 и Excel 2016 x32 - норм Win7х64 и Excel 2016 x64 - норм Win10х64 и Excel 2010 x32 - норм. Win10х64 и Excel 2013 x64 - норм. Win10х64 и Excel 2019 x64, норм. И Если не удастся подключится, попробуем на пустой болванке. Откроется ли.
«Бритва Оккама» или «Принцип Калашникова»?
|
|
|
20.04.2024 12:14:05
Андрей Гайдамака, добрый день. Какая ОС? Не поддерживается WinXP.
«Бритва Оккама» или «Принцип Калашникова»?
|
|
|
18.04.2024 14:37:59
«Бритва Оккама» или «Принцип Калашникова»?
|
|||||
|
18.04.2024 13:41:33
Не будет там никакого safearrey, это СОМ, не путайте. Советую к ознакомлению.
Изменено:
«Бритва Оккама» или «Принцип Калашникова»?
|
|||||||||
|
18.04.2024 13:20:14
«Бритва Оккама» или «Принцип Калашникова»?
|
|||
|
18.04.2024 10:34:35
У меня ОБЫЧНАЯ выгрузка все заполняет.
Изменено:
«Бритва Оккама» или «Принцип Калашникова»?
|
|||||
|
18.04.2024 10:01:02
Изменено:
«Бритва Оккама» или «Принцип Калашникова»?
|
|||||
|
18.04.2024 09:36:30
Добавил варианты использования в первое сообщение.
«Бритва Оккама» или «Принцип Калашникова»?
|
|||
|
17.04.2024 18:31:36
testuser, да похож на Variant, только немного попроще. Данный инструмент XLLcmdE12xlSet() по скорости обгоняет .Value2 на 15% XLOPER12 используется в Excel C API, так же как Variant в VBA. Собственно это основной тип (структура) данных. Для VBA, Excel трансформирует XLOPER12 в Variant и наоборот. В XLL я делаю это сам (ранее руками, теперь написал свой класс XloperX, даже в
Изменено:
«Бритва Оккама» или «Принцип Калашникова»?
|
|||||
|
17.04.2024 15:52:30
Моё почтение, джентльмены!
Инструмент для вставки данных на лист Excel без преобразования. т.е. "1" так и вставится как текст, а не как число. Не нужен апостроф, не нужен формат ячейки. Нужна надстройка Так же быстро заполняет диапазон одним значением. Использована функция Функция/Метод XLLcmdE12xlSet(XCHAR * param, LPXLOPER12 param2, LPXLOPER12 pxReference, LPXLOPER12 pxValue) param - командная строка XLL API - см. "XLL API": 1й параметр - Режим диалога для комманд меню XLL - см. "Диалог" param2 – зарезервирован pxReference - Прямоугольная ссылка (адрес), описывающая целевую ячейку или ячейки. Адрес должен описывать смежные ячейки. pxValue - Значение или значения, помещаемые в ячейку или ячейки. Аргумент pxValue pxValue может быть значением или массивом. Если это значение, этим значением заполняется весь диапазон назначения. Если это массив, элементы массива помещаются в соответствующие расположения в прямоугольнике. Если для четвертого аргумента используется горизонтальный массив, он дублируется вниз, чтобы заполнить весь прямоугольник. Если используется вертикальный массив, он дублируется вправо для заполнения всего прямоугольника. Если вы используете прямоугольный массив, и он слишком мал для прямоугольного диапазона, в который вы хотите его поместить, этот диапазон заполняется исходными данными размером с массив, а остальной диапазон заполняется #Н/Д. Если целевой диапазон меньше исходного массива, значения копируются до пределов целевого диапазона, а лишние данные из массива игнорируются. Чтобы очистить элемент прямоугольника назначения, используйте элемент массива типа Empty в исходном массиве. Чтобы очистить весь прямоугольник назначения, опустите четвертый аргумент. Ограничения Невозможно отменить xlSet . Кроме того, он удаляет все сведения об отмене, которые могли быть доступны ранее. XlSet может помещать в ячейки только константы, а не формулы. Максимальная длина помещаемой строки 8190 символов. Возвращает код ошибки: 0 - команда выполнена успешно и Error 2036, #NUM!, #ЧИСЛО! - если ошибка. Пример использования:
Изменено:
«Бритва Оккама» или «Принцип Калашникова»?
|
|||
|
09.04.2024 12:22:36
«Бритва Оккама» или «Принцип Калашникова»?
|
|||||
|
05.04.2024 07:31:39
XLL это обычная надстройка, ее не нужно запускать все время. Ее нужно поместить в папку для надстроек и подключить (поставить галку в надстройках). Если файл открывать из любого другого места, без размещения в надстройках, он будет открыватся как обычный файл, и при закрытии Excel, нужно будет открывать ещё раз.
Еще есть файл установки, он делает все сам (размещает в парке надстроек - надстройку) и подключает её (ставиь галку в надстройках). Выполняется один раз. Когда перестала работать формула, появлялась ли какая ошибка?
Изменено:
«Бритва Оккама» или «Принцип Калашникова»?
|
|
|
06.02.2024 17:54:14
DAX Studio не справился, потому как я не умею его готовить. Посему пришлось использовать решение выложенное выше с апгрейдом: 1.Выгружаются данные любого размера (у меня 2,5 млн строк, 60 столбцов, в основном текст) 2.Спец.символы экранируются, в данном случае кавычки 3.Числа сохраняются без кавычек, что правильно распознается SQL-сервером 4.Дата сохраняется в формате, который понимает SQL: "yyyy-mm-dd hh:mm:ss" 5.Отключен Timeout, который вызывал отключение запроса на больших временных отрезках (больших данных): cmd.CommandTimeout = 0 ' 6.Поменял фильтр CSV-файлов для нового Excel, кто хочет может допилить до "правильного" кода не привязанного к фильтру, а привязанного к CSV: OFD.FilterIndex = 21 7.Оставил всеми любимый GoTo - на функционал не влияет, кто хочет подпилить - прошу. 8.Файл выгружается в кодировке Windows-1251, не знаю, может ли VBA выгружать в другой, мне было не нужно, можно тоже подпилить при желании. Да, забыл... По скорости выгрузки +- паритет с DAX Studio (у меня в тестах быстрее, чем DAX Studio), Плюс NULL-значения не выгружает (;;), что в SQL и распознается как NULL. DAX Studio выгружает как пустую строку(;"";), что, я считаю, некорректно, т.к. в SQL попадает как пустая строка. Плюс DAX Studio дату оформляет в виде строки с кавычками так, что SQL не распознает как дату. Плюс DAX Studio проставляет в число системный разделитель дробной части, т.е. "," (запятая). В инструменте всегда "." (точка), что корректно загружается в SQL. Из особенностей инструмента: числовые значения если число дробное и меньше нуля, ведущий нуль до разделителя дробной части не проставляется, пример: число 0,002365 отображается как .002365, так отрабатывает
Изменено:
«Бритва Оккама» или «Принцип Калашникова»?
|
|||||||
|
05.02.2024 09:10:05
04.02.2024 BedvitXLL.dll_v5.1
+ +Добавлена обработка ошибок на листе Excel при шифровании, дешифровки и сохранении формул/значений. Как сохраняются текстовые форматы в функциях форматирования в разных локализациях Win + Excel, как сам Excel с этим справляется пока вопрос открытый.
Изменено:
«Бритва Оккама» или «Принцип Калашникова»?
|
|
|
30.01.2024 10:24:54
Senaki, к сожалению, единственного тестера в той теме забанили (не за взлом - я давал офф. разрешение, как разработчик на "стресс-тестирование", а за несоблюдение других правил). Сам с интересом почитаю, если такая информация появятся.
«Бритва Оккама» или «Принцип Калашникова»?
|
|
|
19.01.2024 00:07:42
Изменено:
«Бритва Оккама» или «Принцип Калашникова»?
|
|
|