4

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

Идея состоит в том, что я начинаю изучать, как создавать UDF, и делать различные вещи в VBA, и подумал, что если бы я мог видеть, как Excel на самом деле выполняет Sum() например, я мог бы научиться делать свой код более плотным, меньше места и т. д.

В основном, где находится репозиторий для работы встроенных функций Excel? Это даже доступно?

Изменить: я понимаю, что формулы могут быть написаны в не-VBA. Это хорошо - мне просто любопытно, есть ли способ увидеть их, на каком бы языке они не написаны.

Edit2: общая идея заключается в том, что я изучаю C++/VBA/C # и хотел бы увидеть "официальные" функции, просто чтобы узнать, как они работают, и посмотреть, есть ли способы ускорить код. Функции OpenOffice тоже хороши!

2 ответа2

4

Microsoft Excel является продуктом с закрытым исходным кодом,
но, как вы указали, исходного кода, альтернативного Excel, тоже будет достаточно.

Вы можете изучить исходный код OpenOffice Calc, который очень похож на Microsoft Excel (см. Скриншоты).

Вам не нужно устанавливать продукт. На странице загрузки перейдите к разделу « Источник» и возьмите архив с расширением zip .

Внутри архива найдите файл aoo-4.1.2\main\sc\source\core\tool\interpr4.cxx
и там вокруг линии 3500 вы можете найти длинное заявление case , показывающее внутренние вызовы функций для встроенных функций электронных таблиц. Это ваша отправная точка.

Затем вы можете искать исходные файлы для реализации этих функций.

Удачи!

1

Вместо этого я призываю вас понять логику функций. Вы знаете, что такое Sum , которую вам будет легко воспроизвести. Вещи, которые вы не знаете, например vlookup или stdev имеют какую-то логику - чисто математическую или операционную (например, transpose). Узнайте, как они работают, а затем разработайте свой код на основе логики.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .