-
Contador de contenido
850 -
Unido
-
Última visita
-
Días con premio
31
Todo se publica por pegones1
-
Macro Antonio, ¿no querrás que pintemos pirámides en Excel? La verdad es que es muy entrañable tu felicitación hecha a mano. ¡Felicidades!
-
Recapitulando Fleming, el argumento n, con el número de meses, puede ser un número absoluto mayor que 12 y no hace falta restringirlo a ABS(n) < 12. FIN.MES(fecha_inicial;meses) Meses es el número de meses anteriores o posteriores al argumento fecha_inicial. Si B6 = 23/02/2008 =FIN.MES(B6;24) = 28/02/2010 O sea, dos años despúes (24 meses después) y lo mismo ocurre con los números negativos.
-
Gracias never por tu aclaración. Sólo apuntar que ya dije que los argumentos permiten expresiones aritméticas, lo que se sobreentiende como operaciones con números positivos y negativos. Leyendo la documentación del argumento día de la día Obligatorio. Número entero positivo o negativo que representa el día del mes, de 1 a 31. Si el día es menor que 1, día resta la magnitud de la cantidad de días, más uno, del primer día del mes especificado. A buen entendedor sobran palabras de lo que pasará si día = 0. Creo que compartiréis conmigo que la verdad es que muchos argumentos de funciones en Excel están penosamente documentados e incluso sin documentar.
-
Estoy con sailepaty que dónde esté una fórmula nativa que se quiten las UDFs. Gerson, siempre se puede llamar desde una UDF a una fórmula nativa. La que te pasé en el post #4 para calcular el último día del mes fué ésta: diasmes = VBA.Day(VBA.DateSerial(Year(fecha), Month(fecha)+1, 0))[/CODE] que se convierte fácilmente en una fórmula para todas las versiones de Excel: [CODE]=DIA(FECHA(AÑO(A1);MES(A1)+1;0))[/CODE] Y se obtiene [b]el día anterior al primer día del mes siguiente[/b], ¡como tú querías! La Función FECHA(año; mes; día) permite expresiones aritméticas y la posibilidad no muy documentada de que el [b]argumento día sea 0[/b], lo que equivale al día anterior al día 1.
-
Hola Gerson, el problema es que EoMonth no está disponible por defecto en Excel 2003. Viene de serie en 2007 y 2010. Me limito a buscar en el foro y encuentro que tú mismo te has respondido: https://www.ayudaexcel.com/foro/f7/contar-solo-dias-laborales-excel-2003-a-7198/#post32666 Para activar el complemento: Ve a Tools->Add-Ins y marca Analysis ToolPak y presiona OK / Ve a Herramientas->Complementos y marca Paquete de herramientas de análisis y presiona aceptar. Puedes obtener el último día del mes de esta otra manera para cualquier versión de Excel pero con la limitación de que fecha sea menor que el 1 de diciembre de 9999: diasmes = VBA.Day(VBA.DateSerial(Year(fecha), Month(fecha)+1, 0))[/CODE] Ya me dirás si te funcionan los dos métodos.
-
Gerson, tu fórmula y la UDF generan error #¡VALOR! cuando en las celdas no hay fechas. =SI(A2="";"No es fecha valida";DIA(FIN.MES(FECHA(AÑO(A2);MES(A2);1);0)))[/CODE] Una forma de asegurar que las fechas son válidas y que la celda tiene formato de fecha es ésta que devuelve un 0 en caso contrario: [CODE]=SI(O(A2<1;A2>2958466;IZQUIERDA(CELDA("format";A2);1)<>"D");0;DIA(FIN.MES(A2;0)))[/CODE] Esta fórmula chequea si el número decimal que representa la fecha está entre las fechas aceptadas por Excel, del 1-01-1900 00:00:00 al 31-12-9999 23:59:59 (más o menos) Además comprueba que el formato de la celda sea del tipo fecha, comenzando con la letra D: Propongo esta UDF: [CODE]Public Function diasmes2(ByVal fecha As Variant) As Long If IsDate(fecha) Then diasmes2 = VBA.Day(WorksheetFunction.EoMonth(fecha, 0)) Else diasmes2 = 0 End If End Function[/CODE] que se sirve de la función IsDate para comprobar si se ha introducido una fecha correcta.
-
Extraer numeros de cadena alfanumerica (mejorada)
tema contestó a pegones1 en Gerson Pineda Ideas y aportes
Gracias Gerson, pero no estaría completo si no explicara que he seguido el patrón de los angloparlantes, siguiendo con la sugerencia de sailepaty, ya que: .Pattern = "\d+(\.\d+)?" ' separa números decimales con el signo "." (en inglés) .Pattern = "\d+(\,\d+)?" ' separa números decimales con el signo "," (en español) .Pattern = "-?\d+(\,\d+)?" ' separa números decimales positivos y negativos con el signo "," (en español)[/CODE] Realmente prefiero el último patrón de Regular Expression Syntax (Scripting) ya que si: A1 = ABCD[b]-12,34[/b]EF[b]5,67[/b]GH =GetNum(A1;1) = [b]-12,34[/b] =GetNum(A1;2) = [b]5,67[/b] Esto me recuerda que se me está olvidando el programa [b]sed (stream editor)[/b] con el que comencé a usar las expresiones regulares en Unix hace unos 30 años: sed (informática) - Wikipedia, la enciclopedia libre -
Extraer numeros de cadena alfanumerica (mejorada)
tema contestó a pegones1 en Gerson Pineda Ideas y aportes
Hola sailepaty fíjate que la función es SoloNumeros y su resultado OnlyNumbers lo que seguro que pasa por manejar dos idiomas. Todas las soluciones aportadas obtienen todos los números juntos de la cadena, por ejemplo para: A1 = ABCD1234EF567GH =SoloNumeros(A1) = 1234567 Con lo que aparecen concatenados los dos números. Function GetNum(ByVal txt As String, ByVal ref As Long) As Double With CreateObject("VBScript.RegExp") .Global = True If ref > 0 Then .Pattern = "\d+(\.\d+)?" GetNum = .Execute(txt)(ref - 1) Else .Pattern = "\D" GetNum = .Replace(txt, "") End If End With End Function[/CODE] Con esta función se obtiene: =GetNum(A1;1) = [b]1234[/b] =GetNum(A1;2) = [b]567[/b] =GetNum(A1;0) = [b]1234567[/b] El segundo argumento indica qué número se va a separar y si es <=0 no los separa. Sirve para n números separados por caracteres alfabéticos. -
Hola Macro, gracias por tus macros. El caso más sencillo de sumar días saltándose los sábados, domingos y festivos se puede resolver con la propia función WorkDay de Excel por si alguno no lo sabe: SumarDias = WorksheetFunction.WorkDay(Fecha, Dias - 1, Sheets("Festivos").Range("A:A"))[/CODE] Los otros casos los has expresado muy bien.
-
[CERRADO] Las cuentas de Microsoft en Excel
tema contestó a pegones1 en pegones1 Cafeteria Ayuda Excel
Fornelasa, Lotus Symphony es más compatible con OpenOffice que con MS Office y no puede guardar macros VBA aunque pueda ejecutarlas a veces. Es una buena alternativa a coste cero. Para ahondar más en la herida, se puede visitar la Calculadora de Ahorros de Lotus Symphony que puede ayudar a entender el potencial de ahorro de una organización al cambiar todos o sólo algunos de sus usuarios de Microsoft Office a Lotus Symphony - la alternativa sin cargo de IBM: IBM Lotus Symphony - Savings Calculator Los precios de Microsoft Office y Excel 2010 en español son (ver aquí): $139.99 - Excel $149.99 - Office Hogar y Estudiantes (W, E, PP, ON) $279.99 - Office Hogar y Pequeña Empresa (W, E, PP, ON, OL) $499.99 - Office Professional (W, E, PP, ON, OL, PB, A) W-Word, E-Excel, PP-PowerPoint, ON-OneNote, OL-Outlook, PB-Publisher, A-Access Por separado valen: $139.99 - W, E, PP, OL, PB, A $79.99 - ON Haciendo cuentas, es mejor comprar Office Professional y pedirle por favor a Microsoft que nos descuente los productos no usados (W, PP, ON, OL, PB y A) ¡que sólo queremos Excel! con lo que habrá que pagarle: $499.99 - $79.99 - $139.99 x 5 = $-279.95 Como sale negativo, esa es la cantidad que nos tiene que devolver Bill Gates & Cía. Cualquier otra combinación de productos no nos saldrá más rentable. -
Quienes invertimos tiempo en Excel debemos saber que Micro$oft tiene grandes ganancias gracias a nuestros esfuerzos. Las últimas cuentas del gigante Micro$oft se pueden descargar en ficheros Excel desde aquí: Obtenidas de su web: Microsoft Investor Relations - Income Statements Seguro que podríamos mejorar estas hojas y sus fórmulas, pero es difícil alcanzar tan buenos resultados en tiempos de crisis a costa de nosotros los usuarios de Excel: Office 2010 ha tenido un comienzo rápido con un incremento de ingresos del 15% en su primer trimestre completo en el mercado. Microsoft Business Division: Los ingresos aumentaron 216 millones de dólares o un 26% debido a las ventas del sistema 2010 Microsoft Office y el crecimiento en el mercado de PC. ¿Qué se puede mejorar en estas cuentas? ¿Ya os habéis pasado o comprado Excel 2010?
-
Re: Cual fue tu primer post en AyudaExcel? Hola estimados compañeros, Mi primer post fue sobre calendarios por mi interés en el cálculo con funciones de fecha en Excel, VB, Access, Oracle, Unix, SQL, JavaScript, iCal, etc.: https://www.ayudaexcel.com/foro/f7/ayuda-calendario-excel-7508/#post58464 Gracias a la observación de nuestro compañero numérico 54022298 (¿será un computador en su hamaca de playa?) me di cuenta que tenía un problema al calcular los números de semana y observé el distinto comportamiento en este asunto de las diferentes versiones de Excel, comentándolo en otro post de este foro: https://www.ayudaexcel.com/foro/f6/%5Bsolucionado%5D-mostrar-qu%E9-semana-del-%F1o-es-la-actual-11790/index3.html En estos 6 meses he recibido muchos agradecimientos y siempre he procurado agradecer la ayuda excelente recibida.
-
Si Fleming, que está curtido en este foro, ha picado con el Play de la foto, a más de uno y una les habrá pasado lo mismo. Ya he indicado en el post #1 que el enlace al vídeo es externo ya que no es uno de los compatibles de este foro: Hulu YouTube Vimeo Dailymotion Metacafe Google Facebook sino del Canal de History.com Videos Gracias Gerson por indicarle a Fleming dónde tiene que pinchar para verlo.
-
He encontrado por casualidad este vídeo de 1987 en el que un joven Bill Gates, con gafas de gran tamaño, responde a las preguntas de la prensa acerca de su nuevo y deslumbrante software Microsoft Excel, que "realmente mejora la calidad de sus resultados" ¡Los resultados nuestros no!, se entiende que habla de los resultados suyos ya que, vendiendo Excel y productos Microsoft, lleva más de 15 años siendo uno de los hombres más ricos del mundo según Forbes - Bill Gates No pinches en la flecha de Play (lo de arriba es sólo una foto). Pincha en este enlace de abajo: Personalmente me encanta la flor que lleva en la solapa y el gesto de subirse las enormes gafas. Por cierto, en la foto se ve que las primeras versiones de Excel sólo se sustentaban en 2 columnas.
-
Para pronosticar el tiempo en una hoja Excel lo mejor es llamar a un servicio web. Si Gerson introduce Honduras puede ver el tiempo meteorológico de los próximos 3 días en varias ciudades de su país. De paso puede estudiar el tratamiento de documentos XML en VBA. Se han empleado los siguientes servicios web: GeoLookupXML - Servicio para encontrar una ciudad en la base de datos Wunderground. ForecastXML - Obtiene el pronóstico del tiempo para un lugar. Del Servidor de Aplicaciones Web: Los resultados aparecen sin traducir porque no tengo mucho tiempo dados los tiempos que corren... MiTiempo.zip
-
Pedro (petercien1), que pases un feliz día junto a tu familia. Te deseo mucha felicidad y prosperidad a un luchador chileno como tú, ahora que los últimos mineros sepultados están a salvo y se va quedando vacío el campamento Esperanza. Recibe un puñado de carbón "del dulce", que se regala el día de Reyes Magos en España, de un hijo de minero. Un cariñoso abrazo de otro Pedro. pegones1
-
Como hijo de minero y de pueblo minero me alegra que se hayan puesto todos los medios para rescatar a los 33 mineros chilenos, aunque será difícil que no haya más desgracias en las p.t.s minas donde eres tratado como desaparecido aunque sólo estés a 700 metros de la superficie terrestre y, en cuanto salgan, tendrán que volver a registrarse como personas vivas... Hay muchas preguntas por aclarar, ¿por qué había sólo dos inspectores de minas en la región de Acatama? ¿son caros los inspectores? ¿son seguras las minas? ¿o es que no interesa que paralicen las minas por motivos de seguridad? Todos sabemos que las condiciones laborales de los trabajadores y la seguridad encarecen el oro y el cobre, tan cotizados hoy día, ¿estamos dispuestos los consumidores a pagar ese sobreprecio? ¿o dejaremos que sigan muriendo los mineros chinos, chilenos y de todo el mundo sin hacer nada? Acabo de enterarme que Macro Antonio es autor invitado en el equipo de EXCELLENTIAS.COM ¡Animo con tu labor divulgativa de las macros!
-
Abraham me congratula tu nombramiento como MVP Excelente Para hacérselo saber a todo el mundo, ¿por qué no publicas tu nuevo título en tu página web? ABRAHAM VALENCIA EXCEL y te creas un avatar en consonancia para este foro. Gerson, te cuento que yo también fui invitado a formar parte del equipo de redacción de EXCELLENCIAS.COM, pero mis múltiples obligaciones me impiden de momento diversificarme. En agosto os incorporasteis varios expertos y sí, también avalencia: Abraham Valencia se integra al equipo Excellentias.com por lo que estaré al tanto de vuestros excelentes aportes, ¡MAESTROS!
-
Si tienes la versión de Excel 2010 instalada, y una página Web o un blog de tu propiedad, desde esta semana puedes incrustar libros Excel que podrá ver e incluso editar cualquier visitante de tu blog. Microsoft permite ahora que los workbook que se guarden en SkyDrive con formato Excel 2010, del tipo .xlsx o .xlsb solamente, puedan ser compartidos. Aunque aún tiene bastantes limitaciones al no poder emplear macros ni VBA, ni otras características. Embedding Excel Web App in your own web page or blog - Microsoft Excel 2010 - Site Home - MSDN Blogs Forma parte de: Introducción a Office Web Apps - Microsoft Office Lo que más me gusta es que puedo compartir en mi blog ficheros Excel de otros expertos que estén accesibles al público en general. Ver la Ayuda de Excel Web App Blogueros como Gerson, Macro Antonio y yo tenemos una herramienta muy potente para incrustar ejemplos en los blogs. Prueba a abrir este fichero: EasterSundayCalculation.xlsx - Windows Live Si tienes instalado Excel 2010 lo puedes descargar en tu equipo. Si no tienes Excel 2010, haz click en Compartir e Insertar, y verás la hoja de cálculo y el código HTML que se debe copiar en la página Web o blog en que desees que aparezca. <iframe src="http://r.office.microsoft.com/r/rlidExcelEmbed?su=7719626156792686819&Fi=SD6B219F16DA7128E3!208&AllowInteractivity=False" width="402" height="346" frameborder="0" scrolling="no"></iframe>[/HTML] He incrustado un ejemplo en mi blog: Cómputos que hacen la "Pascua" | Pedro Wave Blog Spot y he hecho referencia a él en este post para que veáis lo bien que queda P.D.: En muchos foros se recomienda a los que tienen Excel 2003, olvidarse de Excel 2007 y dar el salto directo a Excel 2010 por las muchas prestaciones que tiene y, desde ahora, la de incrustar y compartir aplicaciones Excel en la Web es de las más atrayentes.
-
Hola jackpvs, compruébalo ahora mismo con Microsoft ExcelWebApp, la nueva herramienta de Excel para insertar hojas de cálculo en blogs y páginas web, y para no tener que esperar llegar al 2050 la acabo de introducir en mi blog: Cómputos que hacen la "Pascua" | Pedro Wave Blog Spot Como ves, en las columnas C y E hay cálculos que hacen "la Pascua" porque las fórmulas originales que aparecen en las páginas web están escritas con el formato de fechas en inglés y funcionarían cambiando la configuración regional del sistema operativo. Por ejemplo, para la fórmula original en inglés: =DOLLAR(("4/"&DAY(MINUTE(A1/38)/2+55)&"/"&A1)/7,)*7-6[/CODE] traducida a Excel en español (Columna C): [CODE]=MONEDA(("4/"&DIA(MINUTO(A1/38)/2+55)&"/"&A1)/7;)*7-6[/CODE] el formato de fechas es "M/D/AAAA" (mes/día/año) y falla =¡VALOR!, por lo que aconsejo usar esta versión que no depende del formato de las fechas (Columna D): [CODE]=MONEDA(FECHA(A1;4;DIA(MINUTO(A1/38)/2+55))/7;)*7-6[/CODE] En la columna H he metido como he podido la megafórmula: [PHP]=FECHA(A1;SI(SI(RESTO(SI((ENTERO(A1/100)-20)<13;0;ELEGIR((ENTERO(A1/100)-20)-12;-2;0;0;-2;-2;0;-2;-2))+SI((ENTERO(A1/100)-20)<1;0;ELEGIR((ENTERO(A1/100)-20);-1;0;0;-1;-1;0;-1;-1;-1;-1;-1;-1;0;-1;-1;0;0;-1;0;0))+ENTERO(((ENTERO(A1/100)-20)+5)/2)+202-11*RESTO(A1;19);30)=29;-1;SI(Y(RESTO(SI((ENTERO(A1/100)-20)<13;0;ELEGIR((ENTERO(A1/100)-20)-12;-2;0;0;-2;-2;0;-2;-2))+SI((ENTERO(A1/100)-20)<1;0;ELEGIR((ENTERO(A1/100)-20);-1;0;0;-1;-1;0;-1;-1;-1;-1;-1;-1;0;-1;-1;0;0;-1;0;0))+ENTERO(((ENTERO(A1/100)-20)+5)/2)+202-11*RESTO(A1;19);30)=28;RESTO(A1;19)>10);-1;0))+RESTO(SI((ENTERO(A1/100)-20)<13;0;ELEGIR((ENTERO(A1/100)-20)-12;-2;0;0;-2;-2;0;-2;-2))+SI((ENTERO(A1/100)-20)<1;0;ELEGIR((ENTERO(A1/100)-20);-1;0;0;-1;-1;0;-1;-1;-1;-1;-1;-1;0;-1;-1;0;0;-1;0;0))+ENTERO(((ENTERO(A1/100)-20)+5)/2)+202-11*RESTO(A1;19);30)+21+RESTO((20-(RESTO((SI(RESTO(SI((ENTERO(A1/100)-20)<13;0;ELEGIR((ENTERO(A1/100)-20)-12;-2;0;0;-2;-2;0;-2;-2))+SI((ENTERO(A1/100)-20)<1;0;ELEGIR((ENTERO(A1/100)-20);-1;0;0;-1;-1;0;-1;-1;-1;-1;-1;-1;0;-1;-1;0;0;-1;0;0))+ENTERO(((ENTERO(A1/100)-20)+5)/2)+202-11*RESTO(A1;19);30)=29;-1;SI(Y(RESTO(SI((ENTERO(A1/100)-20)<13;0;ELEGIR((ENTERO(A1/100)-20)-12;-2;0;0;-2;-2;0;-2;-2))+SI((ENTERO(A1/100)-20)<1;0;ELEGIR((ENTERO(A1/100)-20);-1;0;0;-1;-1;0;-1;-1;-1;-1;-1;-1;0;-1;-1;0;0;-1;0;0))+ENTERO(((ENTERO(A1/100)-20)+5)/2)+202-11*RESTO(A1;19);30)=28;RESTO(A1;19)>10);-1;0))+RESTO(SI((ENTERO(A1/100)-20)<13;0;ELEGIR((ENTERO(A1/100)-20)-12;-2;0;0;-2;-2;0;-2;-2))+SI((ENTERO(A1/100)-20)<1;0;ELEGIR((ENTERO(A1/100)-20);-1;0;0;-1;-1;0;-1;-1;-1;-1;-1;-1;0;-1;-1;0;0;-1;0;0))+ENTERO(((ENTERO(A1/100)-20)+5)/2)+202-11*RESTO(A1;19);30)+21-19);7))-(SI(SI(RESTO((40-(ENTERO(A1/100)-20));4)=3;1;0)+RESTO((40-(ENTERO(A1/100)-20));4)>1;1;0)+SI(RESTO((40-(ENTERO(A1/100)-20));4)=3;1;0)+RESTO((40-(ENTERO(A1/100)-20));4))-(RESTO((RESTO(A1;100) + ENTERO(RESTO(A1;100) / 4));7)));7)+1>31;4;3);SI(SI(RESTO(SI((ENTERO(A1/100)-20)<13;0;ELEGIR((ENTERO(A1/100)-20)-12;-2;0;0;-2;-2;0;-2;-2))+SI((ENTERO(A1/100)-20)<1;0;ELEGIR((ENTERO(A1/100)-20);-1;0;0;-1;-1;0;-1;-1;-1;-1;-1;-1;0;-1;-1;0;0;-1;0;0))+ENTERO(((ENTERO(A1/100)-20)+5)/2)+202-11*RESTO(A1;19);30)=29;-1;SI(Y(RESTO(SI((ENTERO(A1/100)-20)<13;0;ELEGIR((ENTERO(A1/100)-20)-12;-2;0;0;-2;-2;0;-2;-2))+SI((ENTERO(A1/100)-20)<1;0;ELEGIR((ENTERO(A1/100)-20);-1;0;0;-1;-1;0;-1;-1;-1;-1;-1;-1;0;-1;-1;0;0;-1;0;0))+ENTERO(((ENTERO(A1/100)-20)+5)/2)+202-11*RESTO(A1;19);30)=28;RESTO(A1;19)>10);-1;0))+RESTO(SI((ENTERO(A1/100)-20)<13;0;ELEGIR((ENTERO(A1/100)-20)-12;-2;0;0;-2;-2;0;-2;-2))+SI((ENTERO(A1/100)-20)<1;0;ELEGIR((ENTERO(A1/100)-20);-1;0;0;-1;-1;0;-1;-1;-1;-1;-1;-1;0;-1;-1;0;0;-1;0;0))+ENTERO(((ENTERO(A1/100)-20)+5)/2)+202-11*RESTO(A1;19);30)+21+RESTO((20-(RESTO((SI(RESTO(SI((ENTERO(A1/100)-20)<13;0;ELEGIR((ENTERO(A1/100)-20)-12;-2;0;0;-2;-2;0;-2;-2))+SI((ENTERO(A1/100)-20)<1;0;ELEGIR((ENTERO(A1/100)-20);-1;0;0;-1;-1;0;-1;-1;-1;-1;-1;-1;0;-1;-1;0;0;-1;0;0))+ENTERO(((ENTERO(A1/100)-20)+5)/2)+202-11*RESTO(A1;19);30)=29;-1;SI(Y(RESTO(SI((ENTERO(A1/100)-20)<13;0;ELEGIR((ENTERO(A1/100)-20)-12;-2;0;0;-2;-2;0;-2;-2))+SI((ENTERO(A1/100)-20)<1;0;ELEGIR((ENTERO(A1/100)-20);-1;0;0;-1;-1;0;-1;-1;-1;-1;-1;-1;0;-1;-1;0;0;-1;0;0))+ENTERO(((ENTERO(A1/100)-20)+5)/2)+202-11*RESTO(A1;19);30)=28;RESTO(A1;19)>10);-1;0))+RESTO(SI((ENTERO(A1/100)-20)<13;0;ELEGIR((ENTERO(A1/100)-20)-12;-2;0;0;-2;-2;0;-2;-2))+SI((ENTERO(A1/100)-20)<1;0;ELEGIR((ENTERO(A1/100)-20);-1;0;0;-1;-1;0;-1;-1;-1;-1;-1;-1;0;-1;-1;0;0;-1;0;0))+ENTERO(((ENTERO(A1/100)-20)+5)/2)+202-11*RESTO(A1;19);30)+21-19);7))-(SI(SI(RESTO((40-(ENTERO(A1/100)-20));4)=3;1;0)+RESTO((40-(ENTERO(A1/100)-20));4)>1;1;0)+SI(RESTO((40-(ENTERO(A1/100)-20));4)=3;1;0)+RESTO((40-(ENTERO(A1/100)-20));4))-(RESTO((RESTO(A1;100) + ENTERO(RESTO(A1;100) / 4));7)));7)+1>31;-31;0)+SI(RESTO(SI((ENTERO(A1/100)-20)<13;0;ELEGIR((ENTERO(A1/100)-20)-12;-2;0;0;-2;-2;0;-2;-2))+SI((ENTERO(A1/100)-20)<1;0;ELEGIR((ENTERO(A1/100)-20);-1;0;0;-1;-1;0;-1;-1;-1;-1;-1;-1;0;-1;-1;0;0;-1;0;0))+ENTERO(((ENTERO(A1/100)-20)+5)/2)+202-11*RESTO(A1;19);30)=29;-1;SI(Y(RESTO(SI((ENTERO(A1/100)-20)<13;0;ELEGIR((ENTERO(A1/100)-20)-12;-2;0;0;-2;-2;0;-2;-2))+SI((ENTERO(A1/100)-20)<1;0;ELEGIR((ENTERO(A1/100)-20);-1;0;0;-1;-1;0;-1;-1;-1;-1;-1;-1;0;-1;-1;0;0;-1;0;0))+ENTERO(((ENTERO(A1/100)-20)+5)/2)+202-11*RESTO(A1;19);30)=28;RESTO(A1;19)>10);-1;0))+RESTO(SI((ENTERO(A1/100)-20)<13;0;ELEGIR((ENTERO(A1/100)-20)-12;-2;0;0;-2;-2;0;-2;-2))+SI((ENTERO(A1/100)-20)<1;0;ELEGIR((ENTERO(A1/100)-20);-1;0;0;-1;-1;0;-1;-1;-1;-1;-1;-1;0;-1;-1;0;0;-1;0;0))+ENTERO(((ENTERO(A1/100)-20)+5)/2)+202-11*RESTO(A1;19);30)+21+RESTO((20-(RESTO((SI(RESTO(SI((ENTERO(A1/100)-20)<13;0;ELEGIR((ENTERO(A1/100)-20)-12;-2;0;0;-2;-2;0;-2;-2))+SI((ENTERO(A1/100)-20)<1;0;ELEGIR((ENTERO(A1/100)-20);-1;0;0;-1;-1;0;-1;-1;-1;-1;-1;-1;0;-1;-1;0;0;-1;0;0))+ENTERO(((ENTERO(A1/100)-20)+5)/2)+202-11*RESTO(A1;19);30)=29;-1;SI(Y(RESTO(SI((ENTERO(A1/100)-20)<13;0;ELEGIR((ENTERO(A1/100)-20)-12;-2;0;0;-2;-2;0;-2;-2))+SI((ENTERO(A1/100)-20)<1;0;ELEGIR((ENTERO(A1/100)-20);-1;0;0;-1;-1;0;-1;-1;-1;-1;-1;-1;0;-1;-1;0;0;-1;0;0))+ENTERO(((ENTERO(A1/100)-20)+5)/2)+202-11*RESTO(A1;19);30)=28;RESTO(A1;19)>10);-1;0))+RESTO(SI((ENTERO(A1/100)-20)<13;0;ELEGIR((ENTERO(A1/100)-20)-12;-2;0;0;-2;-2;0;-2;-2))+SI((ENTERO(A1/100)-20)<1;0;ELEGIR((ENTERO(A1/100)-20);-1;0;0;-1;-1;0;-1;-1;-1;-1;-1;-1;0;-1;-1;0;0;-1;0;0))+ENTERO(((ENTERO(A1/100)-20)+5)/2)+202-11*RESTO(A1;19);30)+21-19);7))-(SI(SI(RESTO((40-(ENTERO(A1/100)-20));4)=3;1;0)+RESTO((40-(ENTERO(A1/100)-20));4)>1;1;0)+SI(RESTO((40-(ENTERO(A1/100)-20));4)=3;1;0)+RESTO((40-(ENTERO(A1/100)-20));4))-(RESTO((RESTO(A1;100) + ENTERO(RESTO(A1;100) / 4));7)));7)+1)[/PHP] Con ella no hay cálculos que nos hagan "la Pascua" pues está probada hasta el año 4099, aunque no sé si será tragada vs tratada con la limitación del tamaño de los mensajes de este foro. P.D.: Por cierto, los ministros de las iglesias implicadas están pensando fijar las fechas de Semana Santa para que a los gobiernos y a los colegios de estudiantes no les hagan "la Pascua" por los dichosos cambios anuales.
-
Adjunto fichero con varias funciones y fórmulas que calculan los domingos de Semana Santa según el Calendario Gregoriano desde 1900 hasta 2204, año para el que fallan todas las fórmulas. Sería interesante encontrar una fórmula mejor. En la columna B está el mejor algoritmo reconocido con el que se comparan las fechas. Los domingos de Pascua erróneos se marcan de naranja y los errores de cálculo en rojo. DomingoPascua.zip
-
Como Super Macro Antonio supongo que ahora tendrás que ser más moderado en tus citas para no herir susceptibilidades. Desde Zaragoza comparto contigo la gran pérdida de un hombre que ha hecho historia, desde sus comienzos políticos en el PSA - Partido Socialista de Aragón, durante la Transición Española, de la que guardo un tremendo recuerdo por haber estudiado en el colegio de la familia Labordeta, en el que aprendí la utopía que encierra el Canto a la Libertad. La historia nos cuenta que la Batalla de Zaragoza, durante la Guerra de Sucesión en 1710, fue la última oportunidad para que la Corona de Aragón pasara a ser propiedad del Archiduque Carlos de Austria, pero un mes más tarde fue mal recibido en Madrid y tres meses más tarde se escondió en Barcelona, que fue finalmente tomada en 1714. Los borbones reinaron en España a partir del año 1700 por lo que malamente tuvieron que ver con los conquistadores de los Reinos de las Indias. Estoy seguro que Labordeta hubiera acabado con su famoso grito ¡A la m....!
-
Hay cálculos que nos fastidian porque son muy difíciles o porque no nos salen y decimos que nos hacen la Pascua en sentido figurado. Los cálculos o Computus que propongo son para obtener el Domingo de Pascua (Easter Sunday) que han hecho "la Pascua" a los matemáticos, astrónomos, programadores y calculadoras humanas desde el siglo IV. Hasta logroastur intentó resolver los días de Semana Santa en el post #53 del tema Número de semana. Para que estos cálculos no nos hagan "la Pascua" y no nos fastidien dando fechas equivocadas, he recopilado las fórmulas y UDFs más precisas y curiosas que calculan el Domingo de Pascua en mi blog: pedrowave.blogspot.com/2010/09/computos-que-hacen-la-pascua.html Se pueden descargar desde aquí: EasterSundayCalculation.zip La fórmula más curiosa e incomprensible para mí, que vale para los años 1900 a 2203, es: =MONEDA(("4/"&A1)/7+RESTO(19*RESTO(A1;19)-7;30)*14%*7-6[/CODE] [b][i]¿La comprendes? ¿Conoces alguna fórmula o función mejor?[/i][/b] Si quieres saber más sobre este tema mira mi blog: Cómputos que hacen la "Pascua" | Pedro Wave Blog Spot
-
Como veo que este tema está parado, comparto un juego para romper canicas que me hizo pasar muy buenos ratos en mi primera PDA táctil. Era el juego Bubble Breaker o Rompedor de Burbujas que en esta versión Excel se llama JawBreak o RompeMandíbulas. Está escrito por Andy Pope en su página web AJP Excel Information Se puede descargar desde aquí: jawbreak.zip INSTRUCCIONES: La idea es conseguir la puntuación más alta seleccionando canicas o bolitas adyacentes del mismo color. Cuantas más canicas haya más alta es la puntuación. Haga clic en una canica y todas las canicas adyacentes serán seleccionadas. Haga clic de nuevo y las canicas seleccionadas se romperán y aumentará su puntuación. Haga doble clic en una canica y automáticamente se eliminarán todas las canicas adyacentes. Seleccione una canica de otro color para cambiar la selección actual. En la hoja Ranks se guardan las 10 puntuaciones máximas y los nombres de los jugadores. ¡A disfrutar! Por cierto, no intentes romper las bolitas de colores que salen hoy en Google.es
-
Por lo que a mí respecta, sólo me queda dar las gracias a Macro Antonio, que ha contribuido con sus macros y UDF, a sailepaty por aportar su propia versión con fórmulas a este tema (lástima que no haya más propuestas) y a todos los usuarios lectores que se han interesado o se vayan a interesar en el futuro de cómo separar texto en celdas.