如何解決在EXCEl中函式evaluate的計算式長度限制的問題

時間 2021-10-30 06:12:39

1樓:朱仕平

如果公式規則基本一致,可以將一個單元格的公式折分到兩個單元格中去(但保證切點一致)

通過兩個單元格去計算就可以了.

2樓:匿名使用者

可以把計算式在適當的位置 分成2段 比如說 1+2+1+1

分別將 1+2 輸入 a1 1+1輸入 b1

引用位置輸入

3樓:

dim expression '該變數用於附給計算公式或數值if len(expression) <= 254 then '計算不超過254字元的字串計算式

expression = evaluate("=" & expression)

else '計算超過254字元的字串計算式with createobject("msscriptcontrol.scriptcontrol")

.language = "vbscript"

expression = .eval(expression)end with

end if

4樓:匿名使用者

可以分開命名如

想要計算1+3*5/6+6+7*10*14*42(只是假如)那就命名

計算1=1+3*5/6+6

計算2=7*10*14*42

計算3=計算1+計算2

這樣就可以 了 ,大概思路就是這樣

5樓:掉進水裡

輸入以後,同時按住crtl、****、enter

6樓:電子裝置小專家

回答可以把計算式在適當的位置 分成2段 比如說 1+2+1+1

分別將 1+2 輸入 a1 1+1輸入 b1

引用位置輸入

提問不是吧,這就是資深專家的回答,沒有別的辦法了嗎?

回答因為excel軟體本身有限制。

如果底層允許一個計算式過長的話,可能會造成棧溢位的問題。

提問有沒有其他軟體可以實現

回答所以在開發的時候,會限制一個長度,來保證軟體的可靠性。

您可以嘗試一下wps,但是每個軟體都會有長度的限制。這是計算機底層的瓶頸。

我本身是做計算這方面的,所以沒有哪個軟體敢說自己的產品,在計算的時候,不限制長度的,不限制長度很容易造成記憶體溢位,然後軟體就會崩潰。

您可以嘗試一下分割的計算方法,有點麻煩,但是計算結果並不會出錯。

提問access呢,這個軟體能做些什麼?能不能處理剛我問的事件?

回答access是資料庫儲存,不適合計算哦

提問哦,好吧,對於計算長度限制的問題,沒人去研究嗎?對於那些說什麼什麼計算機每秒計算多少萬次,那又是個啥概念?

回答計算機長度限制的問題,也是一直在研究,但是因為計算機發明的時候,儲存結構就固定下來了,這是沒辦法改變的,所以只有不斷的增加記憶體,來擴大計算長度的限制,也只能是擴大,並不能完全消除限制。

計算機每秒計算次數可達到億級。指的是計算的次數。比如您打遊戲,放一個技能,都需要很多次的運算,cpu作為計算機的核心,也是主要的大腦,所以每秒計算的次數,跟cpu有很大的關係。

cpu本身只能識別二進位制,比如2,轉換成cpu能識別的,就是10

而像計算長度限制這種情況,是因為在發明程式語言的時候,加入了棧空間這種資料結構,而棧這種資料結構是有大小的,運算前,都會先將數字跟符號依次放入棧中,在遇見符號時,進行運算。

您可以把棧這種結構想象成一個水杯,只有一個出入口,而且是有大小的。所以字串過長會出現棧溢位。

提問回答

那樣的話,就太專業了。如果您並不是專門研究函式這個東西的,沒必要花費太多精力,自己編制函式,底層也是使用分割運算。

只是將這個運算方式做一個封裝,讓您看不到如何處理長串的。而excel不提供這種方式,是因為使用者量太大,如果貿然提供一種不是通用的函式,可能會誤導一些人。讓軟體變得不是那麼通用。

更多20條

7樓:匿名使用者

你找的那個是巨集函式,我試過,只能自己使用,而且儲存的話要改為啟用巨集的xlm文件,對方接受的話,如果設定沒有啟用巨集,是沒辦法開啟的。挺麻煩的

8樓:匿名使用者

朋友你怎麼解決的能說下嗎?

excel中如何使用evaluate函式計算這種型別的值?

9樓:人人哦哦哦課

1、按下ctrl+f3組合快捷鍵,將彈出」名稱管理器「對話方塊2、在彈出的」名稱管理器「對話方塊中單擊」新建"命令,將彈出「新建名稱」對話方塊。

3、將名稱文字框中的原有名稱刪除,輸入新的名稱「計算文字算式的值」;將引用位置中的「=sheet1!$b$2」改為「=evaluate(sheet1!a2)」,然後單擊「確定」命令,將在」名稱管理器「對話方塊中看到剛剛新建的名稱。

4、通過以上的步驟新建了名稱後,在b2單元格輸入「=計算」將會自動列出「計算文字算式的值」,也就是通過剛才的定義名稱,就類似於自定義了一個函式。

10樓:

這個是早期版本的巨集表函式,需要定義名稱進行使用。

本例,游標定位在c1,按ctrl+f3,定義名稱:aa,「引用位置」輸入:

=evaluate(b1)

然後,在c2輸入公式:

=aa下拉。

11樓:特特拉姆咯哦

1、按下ctrl+f3組合快捷鍵,將彈出」名稱管理器「對話方塊2、將名稱文字框中的原有名稱刪除,輸入新的名稱「計算文字算式的值」;將引用位置中的「=sheet1!$b$2」改為「=evaluate(sheet1!a2)」,然後單擊「確定」命令,將在」名稱管理器「對話方塊中看到剛剛新建的名稱。

3、通過以上的步驟新建了名稱後,在b2單元格輸入「=計算」將會自動列出「計算文字算式的值」,也就是通過剛才的定義名稱,就類似於自定義了一個函式。如下圖所示

4、完成b2單元格的公式輸入,然後填充填充柄至指定的單元格區域即可計算出a列的文字算式的值。

12樓:

eg:66+6[對面長]+10[周長]

先把你的內容就像上面括起來,然後 alt+f11,插入一個模組,複製下面**,粘進去儲存,然後excel 單元格輸入=js(b2),拉公式吧。不會再問!

function js(a as range)js = evaluate(worksheetfunction.substitute(worksheetfunction.substitute(a, "[", "*istext(""["), "]", "]"")"))

end function

13樓:

已有的分部分項工程量清單與計價中怎麼在後面編制直接生成工程量計價?謝謝!

如何在excel中用evaluate計算文字算式的值

14樓:李先生的職場

1、檔案-選項-高階裡面的lotus設定 2、replace函式應用

15樓:匿名使用者

「在excel中用evaluate計算文字算式」的操作步驟是:

1、開啟excel工作表;

2、根據題意,需要對a列的表示式計算出表示式結果,直接加上=,然後表示式,無法得到結果;而通過自定義函式,使用evaluate函式對表示式返回計算結果。

3、選擇b1單元格,按ctrl+f3,開啟「名稱管理器」,選擇「新建」;

4、在「新建名稱」中,名稱:結果;引用位置:=evaluate(!a1)  確定;

5、則「名稱管理器」中,出現名稱及引用位置,按「關閉」,即可;

6、在b1單元格輸入以下公式,然後向下填充公式

7、得到a列表示式,通過evaluate函式引用a1表示式的結果。

8、如果更改a列表示式,或關閉工作簿後重新開啟可以得到正確結果,b列及時更新表示式的計算結果,那麼需要通過「另存為」「啟用巨集的工作簿」。

16樓:

定義名稱,假設a1內容為1+5*2,你希望在b1得到11,操作(07版公式,定義名稱;03,插入,名稱,定義名稱),名稱框輸入1名稱(如aaa),下面引用位置輸入輸入evaluate(a1),確定,點b1輸入公式=aaa

17樓:匿名使用者

aaaaaaaaaaaa

excel中用evaluate編輯計算式子結果,在第二次開啟時計算結果為什麼顯示不出來,誰能告訴我怎麼解決?

18樓:匿名使用者

選b1→插入→名稱→定義→名稱框輸一名稱(如www)→下面引用位置輸入:=evaluate(a1)→確定→點b1→輸入公式:=www,回車即可

19樓:

因為未啟用巨集。

evaluate是巨集表函式,必須啟用巨集才能有效。

解決辦法:

開啟excel,把巨集安全性設定為「中」或「低」,關閉excel,再重新開啟excel,在提示時選擇啟用巨集。

20樓:匿名使用者

最簡單有效的辦法是:把**儲存為「啟用巨集的工作**式」,即 (.xlsm)格式。

excel中evaluate不能用!

21樓:匿名使用者

evaluate這是巨集表函式之一。這個函式可以實現只要在excel一個單元格里面輸入計算式,就可以在另一個單元格顯示結果。用法如下:

選中該單元格---按下ctrl+f3----輸入你要定義的名稱比如 aaa -----引用位置處輸入比如是: =evaluate(a1)

在要出計算值的單元格輸入公式 =aaa

假設是要整列如此,如下圖

b1中輸入  =aaa  下拉就能實現了

22樓:

按ctrl + f3,調出定義名稱對話方塊,然後按圖設定:

然後,在b1輸入公式:

=x就可以得到a1單元格算式的結果了。

23樓:匿名使用者

工具,選項,安全性,巨集的安全性選擇中。

然後儲存你現在的檔案,重新開啟,開啟時選擇啟用巨集。可以了

24樓:心靈的互動

我來告訴你正確答案:計算選項-手動改自動。網上搜了半天沒有一個正確答案。。。

25樓:月夜清泉

應該選定公式列,b1,設定自定義名稱。

ecel中出現num如何解決,excel中出現 NUM如何解決

海邊的風 此錯誤表明公式或函式中含有無效的數值。原因可能在需要數字引數的函式中提供了錯誤的資料型別。公式可能使用了進行迭代的工作表函式 如 irr 或 rate 且函式無法得到結果。公式產生的結果數字可能太大或太小以至於無法在 excel 中表示。解決方案 可選 如果在 excel 中啟用了錯誤檢查...

excel中如何函式中套函式,Excel中如何函式中套函式

昊涙 excel中函式中套函式的步驟如下 1 開啟資料表 2 我們要為每個學生的總分進行評價 3 首先想到的就是用if函式,可是單單一個if函式很難實現上邊的評價4 我們可以把第二個引數再用一個if函式,這樣的函式組合就是巢狀函式,可是兩個還沒有評價完 5 一直巢狀到可以評價完全為止 6 回車之後,...

如何解決關閉excel表,而其他excel表全部關閉的問

想關閉某個excel表的時候,在你以前關閉excel時點的那個x下面,有個更小的黑色小 x 點那個即可將當前視窗的excel 關閉了。同理,點選左側的 等也可以將當前視窗的excel 最小化和視窗化。如何解決關閉一個excel表,而其他excel表全部關閉的問題?20 還有一個辦法,在最下面的工作列...