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

#31 Manuel Romero
07/11/2003 - 00:54 | Informe spam
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
#32 sabino
07/11/2003 - 18:03 | Informe spam
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
#33 sabino
07/11/2003 - 18:04 | Informe spam
Efectivamente. Muy bien.


"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
#34 Fernán Mateos
07/11/2003 - 19:21 | Informe spam
¿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
#35 Fernán Mateos
07/11/2003 - 19:22 | Informe spam
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