سؤال

لدي مشكلة مع بعض رمز Excel الذي أواجه مشكلة في الحصول على رأسي.

حسنا، لذلك أنا أستخدم الأمر application. العليا في Excel VBA، Office 2007.

لو كنت أملك Evaluate("SIN(45)") إرجاع عدد متوقع لطيف. ولكن إذا فعلت Evaluate("eq") تعطل الرمز.

EQ هي المعادلة التي أقرأها من Excel. المعادلة هي: 3*x^2+5*x+1. وبعد يتم تمريرها كسلسلة. للتأكد من أن هذا حدث وضعته في متغير آخر الذي حددته كسلسلة. أنا استبدال X في المعادلة باستخدام وظيفة استبدال Excel. equation = Replace(equation, "x", temp).

ومع ذلك، عندما أحصل على تقييم التعليمات البرمجية ينهار وأنا لست متأكدا من السبب. Total = Total + Evaluate("equation"). وبعد أي مساعدة يحظى بتقدير كبير

هل كانت مفيدة؟

المحلول

أعتقد أن المشكلة تكمن حيث تشير إلى سلسلة "معادلة" بدلا من سلسلة المعادلة.

أود أن تفعل

Evaluate(equation) أوEvaluate(Replace(equation, "x", temp)) بدلا من ذلك، لاحظ دون الاقتباسات " حول المعادلة ومن شأنها أن تسفر عن إجابة صالحة.

نأمل أن تكون هذه المساعدة.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top