Problema con funlcion en edito Visual Basic

01/09/2005 - 02:26 por Arnoldo | Informe spam
Necesito ingresar esta funcion f = 10x^ 3 - 8.3x ^ 2 + x - 0.21141, para
luego evaluarla en algunas celdas, sin embargo no se como digitarla
correctamente en el editor, ya que si la escribo tal cual me muestra un
error: "Compile Error, expected end of statement", luego si la digito asi: f
= [10x^ 3] - [8.3x ^ 2] + x - 0.21141, compila bien, pero a la hora de
evaluarla me presenta #VALUE! en las celdas.
Ya que he intentado todas las variaciones de escritura (con [], (), etc) no
se si existe una forma de poder ingresar este tipo de expresion.
He digitado la funcionsin sus prefijos, o sea: f = x^ 3 - x ^ 2 + x -
0.21141, y trabaja perfectamente.
Por favor ayudenme!!!!
 

Leer las respuestas

#1 Héctor Miguel
01/09/2005 - 03:55 | Informe spam
hola, Arnoldo !

Necesito ingresar esta funcion f = 10x^ 3 - 8.3x ^ 2 + x - 0.21141, para luego evaluarla en algunas celdas
... como digitarla... en el editor... si la escribo tal cual me muestra un... "Compile Error, expected end of statement"
... si la digito: f = [10x^ 3] - [8.3x ^ 2] + x - 0.21141, compila bien, pero a la hora de evaluarla me presenta #VALUE! en las celdas.
... he intentado todas las variaciones de escritura (con [], (), etc) no se si existe una forma de poder ingresar este tipo de expresion [...]



-> dicho sea 'de paso'... vba y excel son 'componentes acoplados' que NO comparten el mismo codigo 'de origen'
-> vba 'se resiste' a 'evaluar' numeros 'imaginarios' como (-0.2)... cuando en excel [directamente] SI es 'posible' :(
porque la 'precedencia' de los operadores es distinta entre vba y excel [te paso al final lo que dice la ayuda] ;)
-> podrias 'forzar' a que vba 'trabaje como lo hace excel'... si delimitas la expresion por comillas dobles con Evaluate
p.e. -> Evaluate("pon aqui la expresion")
-> suponiendo que 'x' es una variable... delimitar la expresion entre corchetes [ ] ES 'otra' forma de 'evaluar'
[solo que NO 'admite' variables 'cambiantes'... SOLO valores 'constantes' :(
-> tampoco comentas que 'significa' -exactmente- '.. para luego evaluar en algunas celdas... ' -?-

si cualquier duda [o detalles adicionales]... comentas?
saludos,
hector.

de acuerdo con la ayuda en linea {F1} de vba...
si se combinan varios operadores en una unica formula...
la prioridad de los operadores [segun su aparicion/secuencia/...] es:

excel:
- negacion
% porcentaje
^ exponente
* / multiplicacion y division
+ - suma y resta
& conecta dos cadenas de texto (concatenacion)

vba:
^ exponenciacion
- negacion
* / multiplicacion y division
\ division de enteros
Mod modulo aritmetico
+ - adicion y substraccion
& concatenacion de cadenas

Preguntas similares