Pedazo de fallo de excel

03/11/2003 - 20:13 por Fernán Mateos | Informe spam
En primer lugar, yo no sé si esto ya lo sabe todo el mundo o no. Por si
acaso, lo cuento.

Probad a escribir lo siguiente en una casilla de Excel: -3^2

Según las reglas de preferencia de operaciones, el resultado debería ser -9,
ya que el "^" toma preferencia sobre el "-". Pues no. El resultado es 9.

Por otro lado, si uno se construye con VBA una función que haga esto,
funciona correctamente.

El objetivo de este mail es doble:

1. Que la gente que no lo sepa se entere, porque esto puede dar mucho
follón.

2. ¿Cómo se puede avisar o preguntar a Microsoft acerca de este mal
funcionamiento?

Un saludo.

Fernán.

Preguntas similare

Leer las respuestas

#36 crescencio
07/11/2003 - 19:35 | Informe spam
Vale, pero cuando acabes tira de la cadena.


"Fernán Mateos" escribió en el mensaje
news:bpRqb.907474$
¿Que esta discusión no conduce a nada?

Ah, o sea que te parece normal que Excel no siga los estándares


universales
matemáticos y de programación.

Pues nada, como quieras. Tú contra los estándares. Así vamos bien.


"sabino" escribió en el mensaje
news:%
> Entrar en una discusión del estilo que propones (Nómbrame un sólo...) no
> conduce a ninguna parte.
>
> El tema está claro. En un post mío anterior (firmado con el nick jordi)


lo
> decía y Manuel Romero lo explica muy bien un poco más abajo.
>
> como veo que estás 'obsesionado' con la programación, haz esta prueba:
Carga
> una variable con el número -3 y elevalo al cuadrado. Te saldrá 9.
> La expresión -3^2, puede interpretarse, en un entorno informático,


(PERO
NO
> EN UN ENTORNO MATEMATICO) como (-3)^2 o como -(3^2) según las


prioridades
> con las que se definen las operaciones. Está claro que no son


coincidentes
> en Excel y en VB.
>
> Yo creo que todo el mundo entiende, cuando escribe -3^2 que lo que está
> elevando al cuadrado es el número -3 (y no que está elevando al cuadrado


3
y
> despues le quiere cambiar el signo), por lo que opino que el
comportamiento
> de Excel es el correcto (PERO A MI ESTO NO ME CAUSA NINGUN TRASTORNO).
>
> Que no se enfade Jose A. Si no es de letras habrá estudiado por la


LOGSE.
> ;-)
>
>
>
>
>
>
>
>
>
> "Fernán Mateos" escribió en el


mensaje
> news:P6zqb.887451$
> > Sabino, no has entendido nada. Nómbrame un sólo entorno de cálculo o


de
> > programación aparte de Excel (en las casillas, porque el VBA funciona
> BIEN)
> > que trabaje en plan "-3^2 = 9"
> >
> > Y llamar "de letras" a José Antonio es, además de una falta de respeto
> > (tanto para él como para los de letras en el modo que lo estás


usando),
un
> > grave error.
> >
> >
> > "sabino" escribió en el mensaje
> > news:uu8%23$
> > > Tu eres de letras, ¿no?
> > > Intentaré explicarlo despacio con tu ejemplo.
> > >
> > > a = 2 - x^2
> > >
> > > Si x = 3, a = 2 - (+3)^2 = -7
> > > Si x = -3, a = 2 - (-3)^2 = -7
> > >
> > >
> > >
> > >
> > >
> > > "Jose A. Caballero" escribió en el mensaje
> > > news:boe2k9$di6$
> > > > Pues a mi me parece que el que no te enteras eres tú.
matemáticamente
> no
> > > > debe haber ninguna diferencia entre lo que tu llamas un signo de
resta
> y
> > > un
> > > > signo de numero, en la expresion del ejemplo anterior no hay


ninguna
> > forma
> > > > de diferenciarlo y las operaciones se hacen de una forma u otra de
> > acuerdo
> > > a
> > > > la precedencia que se le de a los operadores y no debería haber la
mas
> > > > mínima diferencia entre lo el resultado cuando lo haces en la
pizarra
> o
> > lo
> > > > haces en una hoja de excel.
> > > >
> > > > "sabino" escribió en el mensaje
> > > > news:u$
> > > > > Veo que no te has enterado.
> > > > > Ese menos indica una operación de resta , no es el signo del
número.
> > > > >
> > > > >
> > > > >
> > > > > "Jose A. Caballero" escribió en el mensaje
> > > > > news:bodvrl$b27$
> > > > > > O sea que si alguien escribe en la pizarra de una clase:
> > > > > >
> > > > > > a= 2 - x2 y a contianuación hacemos x=2, según sabino el
> resultado
> > es
> > > > a=6
> > > > > >
> > > > > > Venga ya!!!!
> > > > > >
> > > > > >
> > > > > > "sabino" escribió en el mensaje
> > > > > > news:#
> > > > > > > Pues lo estás enseñando mal.
> > > > > > > -4 es un número (negativo pero un numero como otro


cualquiera
> > > > positivo)
> > > > > y
> > > > > > > por lo tanto no necesita el parentesis.
> > > > > > >
> > > > > > > "Anna" escribió en el mensaje
> > > > > > > news:
> > > > > > > > jordi wrote:
> > > > > > > >
> > > > > > > > > Yo creo que el estandar a utilizar es la matemática.
> > > > > > > > >
> > > > > > > > >
> > > > > > > > De acuerdo, pero en matemáticas,
> > > > > > > >
> > > > > > > > 4^2 = 16
> > > > > > > > -4^2 = -16
> > > > > > > > (-4)^2 = 16
> > > > > > > >
> > > > > > > > En la expresión -(4^2) yo diría que el resultado es -16 y
> sobra
> > el
> > > > > > > > paréntesis.
> > > > > > > >
> > > > > > > >
> > > > > > > > Llevo casi 15 años enseñándolo así.
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > > >
> > > > > > >
> > > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>


Respuesta Responder a este mensaje
#37 crescencio
07/11/2003 - 19:37 | Informe spam
Tienes toda la razón.


"Fernán Mateos" escribió en el mensaje
news:fpRqb.907475$
El tema no es que "La diferencia que ha generado este lio es que la
precedencia del operador unario de cambio de signo, en VBA esta despues de
la exponenciacion y en excel, antes", sino que EN NINGUNA PARTE, EN NINGÚN
LENGUAJE INFORMÁTICO NI EN MATEMÁTICAS se trabaja como hace Excel en las
casillas.

Excel es una herramienta muy potente, cómoda y útil en el mundo


científico.
Es una verdadera lástima que no tenga correctamente implementadas las
preferencias de cálculo en el entorno de las casillas.


"Manuel Romero" <mromerop.arroba.quita.esto.hotmail.com> escribió en el
mensaje news:
> > Pues a mi me parece que el que no te enteras eres tú. matemáticamente


no
> > debe haber ninguna diferencia entre lo que tu llamas un signo de resta


y
> un
> > signo de numero, en la expresion del ejemplo anterior no hay ninguna
forma
>
> El simbolo "-" puede operar de dos formas, como operador binario de


resta
o
> como operador unario de cambio de signo y cada uno tiene un orden de
> precedencia diferente Y SON DIFERENTES
>
> En excel colocas =1-3^2 es igual a -8, en VBA es igual, por lo tanto la
> precedencia del operador binario de resta es la misma en ambos
>
> La diferencia que ha generado este lio es que la precedencia del


operador
> unario de cambio de signo, en VBA esta despues de la exponenciacion y en
> excel, antes
>
>
>
> "Jose A. Caballero" escribió en el mensaje
> news:boe2k9$di6$
> > Pues a mi me parece que el que no te enteras eres tú. matemáticamente


no
> > debe haber ninguna diferencia entre lo que tu llamas un signo de resta


y
> un
> > signo de numero, en la expresion del ejemplo anterior no hay ninguna
forma
> > de diferenciarlo y las operaciones se hacen de una forma u otra de
acuerdo
> a
> > la precedencia que se le de a los operadores y no debería haber la mas
> > mínima diferencia entre lo el resultado cuando lo haces en la pizarra


o
lo
> > haces en una hoja de excel.
> >
> > "sabino" escribió en el mensaje
> > news:u$
> > > Veo que no te has enterado.
> > > Ese menos indica una operación de resta , no es el signo del número.
> > >
> > >
> > >
> > > "Jose A. Caballero" escribió en el mensaje
> > > news:bodvrl$b27$
> > > > O sea que si alguien escribe en la pizarra de una clase:
> > > >
> > > > a= 2 - x2 y a contianuación hacemos x=2, según sabino el


resultado
es
> > a=6
> > > >
> > > > Venga ya!!!!
> > > >
> > > >
> > > > "sabino" escribió en el mensaje
> > > > news:#
> > > > > Pues lo estás enseñando mal.
> > > > > -4 es un número (negativo pero un numero como otro cualquiera
> > positivo)
> > > y
> > > > > por lo tanto no necesita el parentesis.
> > > > >
> > > > > "Anna" escribió en el mensaje
> > > > > news:
> > > > > > jordi wrote:
> > > > > >
> > > > > > > Yo creo que el estandar a utilizar es la matemática.
> > > > > > >
> > > > > > >
> > > > > > De acuerdo, pero en matemáticas,
> > > > > >
> > > > > > 4^2 = 16
> > > > > > -4^2 = -16
> > > > > > (-4)^2 = 16
> > > > > >
> > > > > > En la expresión -(4^2) yo diría que el resultado es -16 y


sobra
el
> > > > > > paréntesis.
> > > > > >
> > > > > >
> > > > > > Llevo casi 15 años enseñándolo así.
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>


Respuesta Responder a este mensaje
#38 Faustino Toba
07/11/2003 - 19:40 | Informe spam
Probé tú expresión original (-3^2) en una celda Open Office y el resultado es 9, el mismo que arroja la calculadora de Windows
La moraleja de todo esto es que hay que ver la ayuda o, mejor, usar paréntesis.
Saludos,
Faustino Toba
Caracas.

"Fernán Mateos" wrote in message news:fpRqb.907475$
El tema no es que "La diferencia que ha generado este lio es que la
precedencia del operador unario de cambio de signo, en VBA esta despues de
la exponenciacion y en excel, antes", sino que EN NINGUNA PARTE, EN NINGÚN
LENGUAJE INFORMÁTICO NI EN MATEMÁTICAS se trabaja como hace Excel en las
casillas.

Excel es una herramienta muy potente, cómoda y útil en el mundo científico.
Es una verdadera lástima que no tenga correctamente implementadas las
preferencias de cálculo en el entorno de las casillas.


"Manuel Romero" <mromerop.arroba.quita.esto.hotmail.com> escribió en el
mensaje news:
> > Pues a mi me parece que el que no te enteras eres tú. matemáticamente no
> > debe haber ninguna diferencia entre lo que tu llamas un signo de resta y
> un
> > signo de numero, en la expresion del ejemplo anterior no hay ninguna
forma
>
> El simbolo "-" puede operar de dos formas, como operador binario de resta
o
> como operador unario de cambio de signo y cada uno tiene un orden de
> precedencia diferente Y SON DIFERENTES
>
> En excel colocas =1-3^2 es igual a -8, en VBA es igual, por lo tanto la
> precedencia del operador binario de resta es la misma en ambos
>
> La diferencia que ha generado este lio es que la precedencia del operador
> unario de cambio de signo, en VBA esta despues de la exponenciacion y en
> excel, antes
>
>
>
> "Jose A. Caballero" escribió en el mensaje
> news:boe2k9$di6$
> > Pues a mi me parece que el que no te enteras eres tú. matemáticamente no
> > debe haber ninguna diferencia entre lo que tu llamas un signo de resta y
> un
> > signo de numero, en la expresion del ejemplo anterior no hay ninguna
forma
> > de diferenciarlo y las operaciones se hacen de una forma u otra de
acuerdo
> a
> > la precedencia que se le de a los operadores y no debería haber la mas
> > mínima diferencia entre lo el resultado cuando lo haces en la pizarra o
lo
> > haces en una hoja de excel.
> >
> > "sabino" escribió en el mensaje
> > news:u$
> > > Veo que no te has enterado.
> > > Ese menos indica una operación de resta , no es el signo del número.
> > >
> > >
> > >
> > > "Jose A. Caballero" escribió en el mensaje
> > > news:bodvrl$b27$
> > > > O sea que si alguien escribe en la pizarra de una clase:
> > > >
> > > > a= 2 - x2 y a contianuación hacemos x=2, según sabino el resultado
es
> > a=6
> > > >
> > > > Venga ya!!!!
> > > >
> > > >
> > > > "sabino" escribió en el mensaje
> > > > news:#
> > > > > Pues lo estás enseñando mal.
> > > > > -4 es un número (negativo pero un numero como otro cualquiera
> > positivo)
> > > y
> > > > > por lo tanto no necesita el parentesis.
> > > > >
> > > > > "Anna" escribió en el mensaje
> > > > > news:
> > > > > > jordi wrote:
> > > > > >
> > > > > > > Yo creo que el estandar a utilizar es la matemática.
> > > > > > >
> > > > > > >
> > > > > > De acuerdo, pero en matemáticas,
> > > > > >
> > > > > > 4^2 = 16
> > > > > > -4^2 = -16
> > > > > > (-4)^2 = 16
> > > > > >
> > > > > > En la expresión -(4^2) yo diría que el resultado es -16 y sobra
el
> > > > > > paréntesis.
> > > > > >
> > > > > >
> > > > > > Llevo casi 15 años enseñándolo así.
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>


Respuesta Responder a este mensaje
#39 Mario Alberto
07/11/2003 - 20:15 | Informe spam
Veo que han utilizado mucho tiempo valioso en ésta discusión y quiero
hacerles unas preguntas:

1. De acuerdo a las matemáticas cual es el orden de preferencia de los
operadores...

2. De igual forma, en las matemáticas cuando se efectúan operaciones con
simbolos (positivo y negativo) cuales son los resultados (p.e. + * + = +, -
* - = +, + * - = -, etc.)...

3. En un papel cualquiera como distingues que un número es negativo (digo
por que en la ponencia original simplemente se escribio lo siguiente "Probad
a escribir lo siguiente en una casilla de Excel: -3^2")...

Desde mi punto de vista hay una apreciación diferente por cada uno de
nosotros y como bien lo expone Manuel Romero, el simbolo "-" puede
interpretarse de dos formas como operador uninario de cambio de signo o como
operador binario de resta.

Luego entonces en la expresión original "-3^2" el "-" es operador uninario u
operador binario?
==> Si es uninario el resultado es 9. En la casilla tendrías que poner =-3^2
==> Si es binario el resultado seria -9. En la casilla tendrías que poner
=-(3^2)

Saludos.

Mario Alberto
Respuesta Responder a este mensaje
#40 Fernán Mateos
07/11/2003 - 20:17 | Informe spam
Es lógico que la calculadora funcione así, porque almacena el número con el
signo; es como si le pusiera internamente un paréntesis. Pero si Open Office
hace lo mismo, me parece otra gran metica de pata, la verdad...


"Faustino Toba" escribió en el mensaje
news:%
Probé tú expresión original (-3^2) en una celda Open Office y el resultado
es 9, el mismo que arroja la calculadora de Windows
La moraleja de todo esto es que hay que ver la ayuda o, mejor, usar
paréntesis.
Saludos,
Faustino Toba
Caracas.

"Fernán Mateos" wrote in message
news:fpRqb.907475$
El tema no es que "La diferencia que ha generado este lio es que la
precedencia del operador unario de cambio de signo, en VBA esta despues de
la exponenciacion y en excel, antes", sino que EN NINGUNA PARTE, EN NINGÚN
LENGUAJE INFORMÁTICO NI EN MATEMÁTICAS se trabaja como hace Excel en las
casillas.

Excel es una herramienta muy potente, cómoda y útil en el mundo


científico.
Es una verdadera lástima que no tenga correctamente implementadas las
preferencias de cálculo en el entorno de las casillas.


"Manuel Romero" <mromerop.arroba.quita.esto.hotmail.com> escribió en el
mensaje news:
> > Pues a mi me parece que el que no te enteras eres tú. matemáticamente


no
> > debe haber ninguna diferencia entre lo que tu llamas un signo de resta


y
> un
> > signo de numero, en la expresion del ejemplo anterior no hay ninguna
forma
>
> El simbolo "-" puede operar de dos formas, como operador binario de


resta
o
> como operador unario de cambio de signo y cada uno tiene un orden de
> precedencia diferente Y SON DIFERENTES
>
> En excel colocas =1-3^2 es igual a -8, en VBA es igual, por lo tanto la
> precedencia del operador binario de resta es la misma en ambos
>
> La diferencia que ha generado este lio es que la precedencia del


operador
> unario de cambio de signo, en VBA esta despues de la exponenciacion y en
> excel, antes
>
>
>
> "Jose A. Caballero" escribió en el mensaje
> news:boe2k9$di6$
> > Pues a mi me parece que el que no te enteras eres tú. matemáticamente


no
> > debe haber ninguna diferencia entre lo que tu llamas un signo de resta


y
> un
> > signo de numero, en la expresion del ejemplo anterior no hay ninguna
forma
> > de diferenciarlo y las operaciones se hacen de una forma u otra de
acuerdo
> a
> > la precedencia que se le de a los operadores y no debería haber la mas
> > mínima diferencia entre lo el resultado cuando lo haces en la pizarra


o
lo
> > haces en una hoja de excel.
> >
> > "sabino" escribió en el mensaje
> > news:u$
> > > Veo que no te has enterado.
> > > Ese menos indica una operación de resta , no es el signo del número.
> > >
> > >
> > >
> > > "Jose A. Caballero" escribió en el mensaje
> > > news:bodvrl$b27$
> > > > O sea que si alguien escribe en la pizarra de una clase:
> > > >
> > > > a= 2 - x2 y a contianuación hacemos x=2, según sabino el


resultado
es
> > a=6
> > > >
> > > > Venga ya!!!!
> > > >
> > > >
> > > > "sabino" escribió en el mensaje
> > > > news:#
> > > > > Pues lo estás enseñando mal.
> > > > > -4 es un número (negativo pero un numero como otro cualquiera
> > positivo)
> > > y
> > > > > por lo tanto no necesita el parentesis.
> > > > >
> > > > > "Anna" escribió en el mensaje
> > > > > news:
> > > > > > jordi wrote:
> > > > > >
> > > > > > > Yo creo que el estandar a utilizar es la matemática.
> > > > > > >
> > > > > > >
> > > > > > De acuerdo, pero en matemáticas,
> > > > > >
> > > > > > 4^2 = 16
> > > > > > -4^2 = -16
> > > > > > (-4)^2 = 16
> > > > > >
> > > > > > En la expresión -(4^2) yo diría que el resultado es -16 y


sobra
el
> > > > > > paréntesis.
> > > > > >
> > > > > >
> > > > > > Llevo casi 15 años enseñándolo así.
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > > >
> > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>


Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida