"Ya es posible, en principio, escribir cualquier cálculo en el lenguaje de fórmulas de Excel", explica Microsoft. Esto significa que Excel puede ser considerado oficialmente un lenguaje de programación, uno que según la empresa ya es "Turing completo", y es todo gracias a un proyecto llamado LAMBDA. La cantidad de cosas que se pueden hacer en Excel da para días y días de conversación. Hemos visto hojas de cálculo que nunca creerías demostrando lo poderosa que puede ser la herramienta de Microsoft cuando la usa alguien con mucha habilidad.
|
etiquetas: excel , lenguaje de programación , microsoft
www.meneame.net/story/lambda-ultima-funcion-hoja-calculo-excel
No sé, a lo loco....
Porque una fecha ES un número y, consecuentemente, cualquier número es una fecha.
Además, si escribes 24-3 excel entiende que es una fecha. Si quieres que te lo trate como número, escribe =24-3.
No me funciona LAMBDA.
El código que genera es malo a conciencia. Se puede utilizar para hacer una "base" del programa y luego meterte con la desbrozadora a quitar líneas absurdas que te mete y a mejorar otras cosas que hace en varias líneas y se pueden hacer en una sola o directamente de otra forma.
youtu.be/iCeOEQVUWZ0
O hasta que necesitan muchos registros.
QUE NO ES ESCALABLEEEEEEE, y después lo tenemos que migrar a algo que sí lo sea!
www.meneame.net/m/tecnología/lambda-ultima-funcion-hoja-calculo-excel
Excel solo admitía valores escalares: números, cadenas y booleanos.
No dejaba que los usuarios definiesen nuevas funciones. << FALSO
De esta manera se acaba con código inmantenible, Excels en varios equipos que dan valores distintos para lo que deberían dar lo mismo, ficheros que salen de las empresas sin control y acaban en malas manos e informes que no cuadran entre sí y llevan a multas millonarias.
Sí, el Excel es un mal muy muy jodido en cualquier empresa de tamaño medio y no digamos ya en las grandes
Otro tema es que '€xcel' sea la mejor opción para meterse en programación funcional...
es.wikipedia.org/wiki/Programación_funcional
en.wikipedia.org/wiki/Structure_and_Interpretation_of_Computer_Program
racket-lang.org/
Así que te lo puedes creer.
Si usas una hoja excel para hacer una lista de objetivos terroristas o, peor aún, de meneantes, tampoco está bien.
En mi caso llevo un tiempo aprendiendo a programar mediante VBA. He mirado mucho acerca de cómo introducirme en el tema de la programación y creo que he elegido este lenguaje de introducción por un tema práctico y os explico:
Trabajo en una Pyme y llevo la administración y trato de automatizar otros procesos que van relacionados al servicio. Se que otros lenguajes eran mejores o más completos, pero no sabría cómo implementarlos desde tan poco conocimiento en un entorno de pyme pequeña donde se trabaja con excel mayormente, sin ERP.
Con VBA a medida que aprendo puedo ir automatizando procesos e ir practicando en la misma empresa. En cambio desde mi ignorancia pienso que para poder aplicar esas cosas con Java, Phyton o el que querais. Necesitaría mucho más conocimiento.
Por lo tanto mi intención de aprender en este mundillo, es crear un sistema que cubra todas las necesidades los tiros van por lo que dice #35 que si, será muy cutre porque soy un noob, pero la empresa también es bastante troglodita, así que ambos nos beneficiamos. A partir de ahí cuando ya tenga algo de conocimiento pues puedo empezar a trastear con bases de datos y aprender un lenguaje más "cualificado" por decirlo de alguna manera.
No sé si estoy muy equivocado o lo veis una manera correcta de empezar.
Un saludo y gracias.
¿No me crees? Prueba a pegar un código de Python aquí, en un comentario y luego me dices qué tal funciona, luego lo pruebas con JavaScript y verás, que aunque el formato se quede tocado, sigue funcionando.
En mi trabajo anterior, 70% de los proyecto eran convertir excels a apliaciones de verdad.
Que yo sepa Excel no convierte ningún número en fecha, tú pones 3542 y eso es un número, tú pones 123,7832, etc. y eso es un número y te lo trata como tal. No conozco ningún caso en el que Excel convierta un número en fecha. A lo mejor estoy equivocado.
Si te refieres a introducir 24-3 como dice #18 y que te dé el resultado de 24 menos 3, eso no es un número, es una fórmula y debes meterlo como =24-3 para que te dé 21. De lo contrario obviamente te lo va a convertir a fecha pero es porque 24-3 así escrito no es un número, es una fecha y por eso te la convierte, o en todo caso será texto pero no un número. Si lo que buscas es el resultado entonces escríbelo como fórmula: =24-3
Si te refieres a escribir 24-3 y que te lo deje tal cual así, 24-3 en vez de 24-marzo, entonces, otra vez, eso no es un número, es texto y para que no te lo convierta en fecha primero debes definir la celda como texto, para que Excel sepa a qué atenerse. Entonces úsalo correctamente y define el formato de celda como texto.
Y ya está, no se me ocurre ningún supuesto en el que Excel convierta un número en fecha, así que creo que te has expresado mal.
Me parece complicarlo demasiado. Si ya hay formulas que cuesta un huevo leerlas y entenderlas por la cantidad de funciones y parametros y condicionales y .... pues no te digo nada si tienes que meter una función compleja en una sola linea ...
Además las macros huelen a virus y a la gente no le gustan, en cambio esto es perfecto.
Por otra parte Javascript desde que existe Typescript ya es usable en grandes proyectos sin tener tendencia a querer cortarte las venas.
Sobre lo de pegar código, aún así no puedes hacer comentarios en código fuente, por ejemplo:
if(el_usuario_ha_leído_hasta_aquí){
document.write("El Chatbot de MS que sacaron hace poco recuerda también un poco a otro capítulo de Black Mirror.");
}
Y he llegado incluso a programar juegos en Excel. Tengo versiones del Settlers (Colonos), del Bloodbowl y de algún juego más hechas en Excel, para poder jugarlos sin tener los elementos físicos del juego (tableros, dados, figuras, fichas...).
En Excel y con el VBA se pueden hacer cosas muy chulas con sólo una pizca de ingenio.
Es conocido el caso de investigaciones que usaban Excel para guardar datos de información genética, los famosos GTCGAGT... que excel formateaba y generaba datos erroneos.
Ahora estoy teniendo el siguiente problema con excel, introduzco un campo con el siguiente formato: TEXTO_TEXTO_TEXTO_1 ... y lo que hace es reemplazarme el "_1" del final por un "₁" , porque igual coincide con vete tu a saber que formato y sobreentiende que lo tiene que corregir.
Así que el problema es que, como excel intenta facilitar la vida en los usos mas habituales, en muchos casos sobreentendiendo que es lo que quieres escribir, en los usos menos habituales te hace un destrozo. Y no vale formatear las celdas porque el formateado en muchos casos se pierde en las importaciones/exportaciones.
Para que no te transforme nada tienes que formatearlo como texto. Si te sale la ventana de "formatear celdas" tendrás que cerrarla, ahí la culpa es de que la gente no mira. En cuanto a que se pierde el formato con versiones antiguas, no me ha ocurrido pero si lo dices será.
Sería bueno que Excel tuviese la opción de deshabilitar todas las transformaciones pero en la mayoría de los casos los problemas ocurren porque la gente no usa bien Excel y no establece los formatos.
Si no se puede, primero estableces el formato en las celdas del Excel a texto y luego pegas el contenido como texto, así no te va a transformar nada.
De todas formas, sería más fácil si el Excel tuviese una opción de deshabilitar por completo las transformaciones.
Algo que también es engorroso es que las transformaciones son irreversibles, si 2-3 te lo transforma a 2-marzo, cuando cambies el formato de la celda a texto te aparecerá 44257 en vez de 2-3
informáticosa actualizar el C.V. en Infojobs y LikedinTu postura de "Excel es basura porque permite hacer de todo" en cambio carece totalmente de sentido. Que pueda hacer prácticamente de todo es la razón por la que es buenísimo. Es la polla.
Tu postura es como decir que http es malísimo porque te pueden espiar lo que envías. Pues será malísimo si lo utilizas para cosas que no deben ser espiadas, pero es perfectamente razonable para muchísimas otras cosas diferentes. La responsabilidad de usarlo bien o mal recae en quien elige la herramienta, no en la propia herramienta.
Y se utiliza Excel para muchísimas cosas para las cuales hay que utilizar un sistema de base de datos (y no me refiero a Access) más una aplicación de gestión por cuestiones de velocidad, seguridad y potencia. Sin ir más lejos, te recuerdo la última hoja excel que nos jodió la vida cuando se utilizó para contabilizar a los pacientes enfermos de COVID si no recuerdo mal en UK. Se sobrepasó el máximo de filas en cierto momento y ale, todo a la mierda.
thenewstack.io/brendan-eich-on-creating-javascript-in-10-days-and-what