Excel 和 VBA - 函數的底層程式碼在哪裡?

Excel 和 VBA - 函數的底層程式碼在哪裡?

我想知道 Excel 或在線是否有任何地方可以用來查看 Excel 中的函數是如何運作的。

我的想法是,我開始學習如何製作 UDF,並在 VBA 中做各種事情,並認為如果我可以看到 Excel 實際上如何執行,Sum()例如,我可以學習如何使我的程式碼更緊湊,佔用更少的空間, ETC。

基本上,Excel 內建函數如何運作的儲存庫在哪裡?那還可用嗎?

編輯:我知道公式可能是用非 VBA 寫的。沒關係 - 我只是好奇是否有辦法看到它們,無論它們是用什麼語言編寫的。

Edit2:整體想法是我正在學習 C++/VBA/C#,並且希望看到「官方」函數只是為了了解它們是如何運作的,並看看是否有任何方法可以加快程式碼速度。 OpenOffice的功能也不錯!

答案1

Microsoft Excel 是一個閉源產品,
但正如您所指出的,Excel 替代品的源代碼也足夠了。

您可以檢查原始碼OpenOffice 運算它與 Microsoft Excel 非常相似(請參閱螢幕截圖)。

您無需安裝該產品。上下載頁面,聚焦到標記的部分來源並取得存檔壓縮擴大。

在存檔內,檢視文件 aoo-4.1.2\main\sc\source\core\tool\interpr4.cxx
,在第 3500 行左右,您可以找到case顯示內建電子表格函數的內部函數呼叫的長語句。這是你的起點。

然後你可以搜尋原始檔案來實現這些功能。

祝你好運!

答案2

相反,我會敦促您理解函數的邏輯。你知道 aSum是什麼,這對你來說應該很容易複製。你不知道的事 - 例如vlookupstdev有某種邏輯- 無論是純數學的還是運算的(如transpose)。學習如何這些工作然後圍繞邏輯設計你的程式碼。

相關內容