Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 59 След.
Удаление объектов (Shape) находящихся в конкретном диапазоне листа.
 
Цитата
БМВ написал:
Приписками занимаемся :-) может 5, а не 50.
напомнило....
"-Этот гамбургер не хочешь ты...
-Я не хочу этот гамбургер.
-И эту картошку ты Йоде отдашь...
-Картошку Йоде отдам.
-И тест здесь по 5 тыс фото...
-Нет, тест... тест все таки по 50...
-По 5!
-По 50!"
Изменено: bedvit - 21 Фев 2020 13:06:11
«Бритва Оккама» или «Принцип Калашникова»?
Удаление объектов (Shape) находящихся в конкретном диапазоне листа.
 
Набросал тест на 50 тыс. фото
Результаты (время сек., найденных позиций) на моей машине:
Variant Intersect = 2,996094                   10
Variant Row/Column = 2,765625              20
Variant Address = 2,917969                     30

Отклонения действительно небольшие.
Самый быстрый - Row/Column
далее Address
далее Intersect

Протестируйте у себя.
Тест-файл прилагаю.
«Бритва Оккама» или «Принцип Калашникова»?
Удаление объектов (Shape) находящихся в конкретном диапазоне листа.
 
Коллеги, будут интересны результаты теста, если кто сделает тест-файл протестирую и у себя.
«Бритва Оккама» или «Принцип Калашникова»?
Удаление объектов (Shape) находящихся в конкретном диапазоне листа.
 
Ранее делал так, довольно шустро выходило
Код
If Shape.TopLeftCell.Row >= xNew And Shape.TopLeftCell.Row <= xEnd Then...

xNew и xEnd - задаваемый диапазон строк.
Аналогично можно сделать и для столбцов.
Нет Intersect, нет String.
«Бритва Оккама» или «Принцип Калашникова»?
Копирование множества изображение (Shapes) в другую книгу. VBA
 
Михаил, делал загрузчик, который загружает по номенклатуру, тысячи рисунков. На каждую номенклатуру свой рисунок из нужной папки на диске. С учётом решения выше озвученной проблемы, в остальном был только вопрос в размере получаемого файла. Мах итераций делал в районе 1000, при неудачных вставках. Дмитрию спасибо за идею. Плюс изменял размер под единый задаваемый формат. Код не секретный, в случае необходимости могу выложить + форма. 12 тыс рисунков это прилично, но не вижу преград, кроме размера получаемого файла, тем более они и так хранились изначально, как я понял, в книге Excel.
«Бритва Оккама» или «Принцип Калашникова»?
Длинная арифметика (Bignum arithmetic ) c COM-интерфейсом и C API Functions для Excel. С/С++
 
Jack Famous, на мой взгляд здесь несколько/какая либо из причин:
1. Проект набрал мало голосов, возможно по причине узкой специализации.
2. Написан не на VBA, что не позволяет скопировать часть функционала в свой проект, использовать наработки в своих vba-проектах и как следствие п.3
3. Написан как отдельная надстройка/библиотека, т.е открывается/устанавливается отдельно.
4. Нельзя посмотреть код. Без открытого кода, неясно, что за кот в мешке. На самом деле все исходники у меня лежат на гитхабе, планирую их все открыть. Пока не причесал и не открыл доступ, могу любые запрошенные функции опубликовать здесь.
5. Возможно для копилки нужен больший функционал - здесь жду пожелания.
6. Копилка - итоговый вариант проекта, здесь же проект развивается, хоть и медленно, возможно, еще рано, с учётом п.5.
7. Нельзя использовать в Оf365? Нет его у меня, не могу протестировать.

Есть правда и некие плюсы проекта написанного отдельно в xll:
8. Легко интегрируется - открыл xll, все - можно пользоваться всеми доп.функциями, с учетом п.7
9. Написан на Си, поэтому работает очень быстро
10. Весь код написан мной + стандартные библиотеки + MPIR/GMP, т.е гарантируется отсутствие вредоносного кода сообществом разработчиков и моей репутацией, как разработчика. В дальнейшем гарантией будет открытый код.
«Бритва Оккама» или «Принцип Калашникова»?
Копирование множества изображение (Shapes) в другую книгу. VBA
 
Сталкивался с таким поведением. Причем на win10, а на win7 все отрабатывало штатно. Решил способом предложенным Дмитрием.
«Бритва Оккама» или «Принцип Калашникова»?
Длинная арифметика (Bignum arithmetic ) c COM-интерфейсом и C API Functions для Excel. С/С++
 
Теперь расчеты любой точности в Excel еще проще.
Открываем надстройку, используем функции, аналогичные стандартным в Excel.

Выделил время, доделал ранее задуманное.
Добавил все основные арифметические функции в библиотеку/надстройку .xll:
1.XLLBignumArithmeticInteger - функции для работы с длинными целыми числами.
Функции:
1.1 SumInteger - сложение двух длинных/обычных целых чисел
1.2 SubtractInteger - вычитание двух длинных/обычных целых чисел
1.3 MultiplyInteger - умножение двух длинных/обычных целых чисел
1.4 DivideInteger - деление двух длинных/обычных целых чисел - Неполное частное
1.5 ModInteger - деление двух длинных/обычных целых чисел - Остаток от деления
1.6 PowerInteger - возведение в степень длинного/обычного целого числа
1.7 ConvertBaseInteger - конвертирование целого числа (строки) из одной базы в другую (от 2 до 36).
1.8 FactorialInteger - факториал задаваемого числа.

2.XLLBignumArithmeticFloat - функции для работы с длинными дробными числами.
Функции:
2.1 SumFloat - сложение двух длинных/обычных чисел с плавающей точкой
2.2 SubtractFloat - вычитание двух длинных/обычных чисел с плавающей точкой
2.3 MultiplyFloat - умножение двух длинных/обычных чисел с плавающей точкой
2.4 DivideFloat - деление двух длинных/обычных чисел с плавающей точкой
2.5 PowerFloat - возведение в степень длинного/обычного числа
2.6 RootFloat - извлечение квадратного корня из длинного/обычного числа

Для сложения/умножения добавил возможность передавать массив в качестве аргумента функции (суммировать/умножать все элементы массива, как в стандартных функциях Excel).
Последние версии надстройки всегда здесь.
«Бритва Оккама» или «Принцип Калашникова»?
Как заставить работать функцию ГИПЕРССЫЛКА в Libra или Open или...?
 
Как и у Alemox, все работает в LO.
Незабываем про Ctrl.
«Бритва Оккама» или «Принцип Калашникова»?
Ответ на «Главный вопрос жизни, вселенной и всего такого», 42 = -80538738812075974^3 + 80435758145817515^3 + 12602123297335631^3
 
Владимир, спасибо! Прочитал с интересом.
«Бритва Оккама» или «Принцип Калашникова»?
Аналог Application.Trim
 
До кучи. Если будет очень много данных, и нужно будет очень быстро обрабатывать их. Заодно там же решения на регулярках.
«Бритва Оккама» или «Принцип Калашникова»?
Ошибка: Expected End of statement в функции
 
Цитата
Abattur написал:
Нужно ли мне как-то обозначить, что значение функции возвращается и как, если не return?
вместо
Код
    cellAddress = CStr(rowNumber) + ", " + CStr(columnNumber)
Return cellAddress

нужно
Код
CellName= CStr(rowNumber) + ", " + CStr(columnNumber)

А вообще Игорь все написал, см. пост 3
«Бритва Оккама» или «Принцип Калашникова»?
Ответ на «Главный вопрос жизни, вселенной и всего такого», 42 = -80538738812075974^3 + 80435758145817515^3 + 12602123297335631^3
 
Нахождение решения заняло более миллиона часов машинного времени, но математики всё-таки смогли найти ответ.

Зачем это надо?
Математики развлекаются, у них это открытая проблема в теории чисел.
Сумма трёх кубов
«Бритва Оккама» или «Принцип Калашникова»?
Ответ на «Главный вопрос жизни, вселенной и всего такого», 42 = -80538738812075974^3 + 80435758145817515^3 + 12602123297335631^3
 
42 наконец-то разложили на три куба
«Ответ на главный вопрос жизни, вселенной и всего такого»
И таки да, проверил - сходится.

Теперь наименьшим числом, не разложенным на три куба, стало 114. Среди чисел меньших тысячи таких чисел, кстати, тоже остается не очень много: 165, 390, 579, 627, 633, 732, 795, 906, 921 и 975.
Кто хочет поучаствовать? )
Изменено: bedvit - 13 Фев 2020 12:58:12
«Бритва Оккама» или «Принцип Калашникова»?
Защитить код паролем но оставить доступ к макросам
 
Наименования процедур хранимых в настройке не показываются вне зависимости есть пароль на проект или нет. Используйте прямой путь к надстройке.
«Бритва Оккама» или «Принцип Калашникова»?
Делимся..., разным
 
Alemox, прикроют Visual Studio 2010, уже есть Visual Studio 2019. На нее и переходите. С++20 часть плюшек раализована в компиляторе, в других языках есть обновы.
«Бритва Оккама» или «Принцип Калашникова»?
О погоде
 
Юрий, а Андрей уже не в Питере)
«Бритва Оккама» или «Принцип Калашникова»?
Как хранить большие объемы данных а Excel?
 
Какое сжатие, если трансляция кода VBA происходит в ОЗУ. Разницы нет, или она будет при некой оптимизации, учитывая к примеру разрядность с х32 на х64. Или файл-тест в студию, который я смогу запустить и  посмотреть итоги.
«Бритва Оккама» или «Принцип Калашникова»?
Как хранить большие объемы данных а Excel?
 
И не только, еще в ресурсах, к примеру картинки, или в коде VBA (по факту это тоже лишь набор символов).
«Бритва Оккама» или «Принцип Калашникова»?
Как хранить большие объемы данных а Excel?
 
Цитата
Ігор Гончаренко написал:
я по-прежнему утверждаю, что данные в Excel хранятся в ячейках листов Excelи маленькие и большие обьемы хранятся именно так, в ячейках листов Excel, альтернативы нет!
Строго говоря это не так. П.7 это доказывает. Я хочу хранить в книге библиотеку или другой какой либо ресурс, размером более 65 тыс.байт, и формате отличной от unicode-string. В данном случае хранение в ячейках это плохое решение, хотя существует и такой вариант. Почему плохое? Надёжность данных, скорость работы упаковщика, инкапсуляция.
«Бритва Оккама» или «Принцип Калашникова»?
Как проводить юнит-тесты VBA проектов?
 
Не сталкивался. Это нужно для каких целей? Если программа выдает ожидаемый результат во всех заказанных режимах работы - тест пройден)
«Бритва Оккама» или «Принцип Калашникова»?
Подборка функций пользователя
 
Чем это проще, чем присвоить значение напрямую. Для чего эта функция?
«Бритва Оккама» или «Принцип Калашникова»?
Запрет сохранения изменений в файле Excel
 
Поставить пароль на редактирование при открытии файла. Смогут открыть только для чтения и соответственно сохранить под другим, нужным именем.
«Бритва Оккама» или «Принцип Калашникова»?
Нечёткий поиск / Fuzzy Lookup: как повторить или подключиться через VBA
 
Владимир, спасибо. Удалил исходники в п.5, оставил только данные по сборке.
«Бритва Оккама» или «Принцип Калашникова»?
Нечёткий поиск / Fuzzy Lookup: как повторить или подключиться через VBA
 
Nordheim, да.
Цитата
Jack Famous написал:
использовать функционал надстройки кроме как ручками легально не получается
почему же, используйте в том виде, в котором она распространяется. Владимир выше пишет, что технически она работоспособна (я не тестировал).
ZVI, Владимир правильно ли я понял, что с 30/07/19 мой пост 5 не является взломом лицензионного софта?
«Бритва Оккама» или «Принцип Калашникова»?
Нечёткий поиск / Fuzzy Lookup: как повторить или подключиться через VBA
 
Посмотрел.
Написано:
The following libraries are required and will be installed if necessary:
.NET 4.5
VSTO 4.0

Но, при беглом осмотре, написана она не на .NET (по крайней мере установщик)
...
Посмотрел внимательнее, setup.exe - это бинарник.
FuzzyLookupAddInForExcel.dll - .NET

Сборка
Скрытый текст


ConfigurationForm
Скрытый текст

т.к. насколько я понимаю код закрыт, поэтому завтра я удалю сей "подсмотренный" код.

Резюме, надстройка написана на .NET, при желании можно добавив функционала и API (для VBA), собрать свою, при определенных знаниях.
Это называется хакинг. Мне это не интересно.
Изменено: bedvit - 18 Дек 2019 16:33:01 (Удалил исходники, в соответствии с лицензией от правообладателя (bedvit))
«Бритва Оккама» или «Принцип Калашникова»?
Нечёткий поиск / Fuzzy Lookup: как повторить или подключиться через VBA
 
Цитата
Jack Famous написал:
лучше надстройки варианта не нашёл, отсюда вопрос, можно ли ей управлять через VBA
Где эта надстройка?
«Бритва Оккама» или «Принцип Калашникова»?
вечером, после трудного дня, можно же послушать качественную музыку?
 
БМВ, Михаил, у меня такая же акустика. Вроде и не советская уже (российская), а так же хороша!
Изменено: bedvit - 17 Дек 2019 11:00:21
«Бритва Оккама» или «Принцип Калашникова»?
Подключить DLL(C++) к VBA
 
Это потому, что сборка с ошибкой, см. пост 14,15
Вот правильная версия.
«Бритва Оккама» или «Принцип Калашникова»?
TreeView . Каким образом можно каждый раз получать массив (состоящий из Node.Text) от каждый раз "обновленного" TreeView,
 
Думаю Сергей Кр, за 5 (пять) лет решил эту проблему. Да и последний раз он на форуме год назад был.
«Бритва Оккама» или «Принцип Калашникова»?
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 59 След.
Наверх