Quantcast
Channel: #ExcelPedroWave
Viewing all 258 articles
Browse latest View live

Data Conversion 3: Chess Game with formulas

$
0
0
Chess game with iterative formulas


In Excel there is something to those who we like the formulas that takes us out of our squares, when you see a circular reference, because a cell refers to itself in a direct or indirect way, forcing to remove or correct the circular reference or, as is the case in this game, to accept it to work by changing the number of times Excel iterates a formula.

Iteration is the repeated recalculation of a worksheet until a specific numeric condition is met. Excel cannot automatically calculate a formula that refers to the cell — either directly or indirectly — that contains the formula. To use iterative formulas we must change Excel options:
Enable iterative calculation.
Maximum number of iterations = 1 in this game.

Microsoft.com: How to change formula recalculation, iteration, or precision


Rules and norms of the game of chess

The first rule that I have in mind is the classic
Touch-move rule

Using only formulas, how pieces are touched? How do you get the piece touched? How to know the destination square?

The trick has been to insert 64 option buttons from form controls, one for each of the 8x8 = 64 squares of the chessboard, called Square11 to Square88, using the nomenclature of numerical chess notation. They are the 64 forms that are grouped in the Squares, as seen in the image to the right of this text to all forms in the Chessgame sheet.

These radio buttons are not visible through the squares were extended five times and, with a zoom of 20%, the buttons appear to the hinges of the doors of each square box. Each of these buttons takes the size of a square and it is linked to the same cell: Square. Pressing each button generates a different number from 1 to 64, so you know exactly what box is down.

The position of the piece played is stored in the cell: PositionPiece, until you touch a new square that is a valid position of the played piece, if it is found with cell formulas into MirrorSquare and Move.


Chess Game Download

You can download these chess game following this link:



Chess Game Specifications

This game lets you play chess between two humans. No takes a game engine (impossible with formulas in Excel, it would not be effective and bad performance).

Is intended to generate a chessboard with 32 initial pieces to review the moves allowed by the rules of chess and to store games in an Excel spreadsheet to do the database of games played in the NumericGames sheet.

The specifications of the chess game are:

  1. Chess game between two humans programmed in Excel only with iterative formulas, without macros or VBA.
  2. Chessboard of 64 squares as a resizable form with the ability to flip the board on the side of the white or the black pieces.
  3. Touch of the pieces and squares with 64 radio buttons linked to a single cell: Square.
  4. Rules of short and long castling.
  5. En passant pawn capture.
  6. Option to view the game from the side of the white or the black.
  7. Option to view the cell references in algebraic or numeric notation.
  8. Option to select the style of chess pieces (figurines) or numeric or algebraic style.
  9. Option to display the last movement of a piece, its possible legal moves and attack positions of the white or black pieces.
  10. Option to select the chess game number.
  11. Option to start a new game.
  12. Panel to display each of the moves of the game in numeric notation. Algebraic notation will be added later.
Yet to be resolved:
  1. Valid positions in the king check.
  2. Checkmate detection.
  3. Promoting pawns.
  4. Save chess games in algebraic notation.
  5. Save FEN notation.
  6. Translate the game into several languages.
I hope you enjoy and make you enjoy such good times as I have been debugging this chess game.

To further improve this game I wait for your supportive comments.


Proyecto Chess - PC

$
0
0
Proyecto Chess - PC - Personal Computer

Proyecto Chess es el nombre en código del Proyecto de diseño del primer Computador Personal de IBM. Las mismas siglas PC sirven para denominar al Project Chess y al Personal Computer.

El primer IBM PC modelo 5150 fue presentado el 12 de agosto de 1981 y fue el comienzo de la mayor partida de ajedrez de la historia, en la que el objetivo era ganar la batalla para que la informática llegara a ser una tecnología ubicua y omnipresente en nuestras vidas y, desde hace 31 años, ¡lo están consiguiendo!


Mi primera experiencia con un PC

Mi primer contacto con lo más parecido a un PC fue en 1978 con un HP-97 mientras estudiaba en la Universidad. Hasta 1987 estuve rodeado de calculadoras y computadoras de la primeras generaciones de ordenadores personales y de mis primeros programas escritos en lenguaje máquina, en ensamblador, en Basic, Fortran o Pascal y me gustó tanto la informática que desde entonces no he parado de programar.

Lista de las computadoras personales de los años 80

En aquellos años devoraba todos los programas y revistas que caían en mis manos.  La que mas me gustaba era, con diferencia, BYTE, que incluía todas las novedades tanto del hardware como del software de los primeros tiempos de los PCs.

Portadas de la revista BYTE con los primeros PCs

En noviembre de 1982 BYTE organizó un concurso de juegos y mi favorito fue JETSET - Jet Simulator Electronic Trainer, para pilotar un avión desde el despegue hasta el aterrizaje en una computadora TRS-80 Model II.

Tres años después de la aparición del PC, en 1984 llegó a mis manos mi primer ordenador personal, y que aún conservo, aunque lo compartiera con mi hermano era todo un Computador Personal - PC, pero sin disquetes.

Era un Sharp MZ-700 que ni siquiera tenía un monitor por lo que lo conectaba al único televisor de la casa mediante el modulador RF incorporado. Para reproducir los programas incluía un lector y grabador de cintas de casete a 1200 bits/segundo y para editar los programas disponía de un robusto teclado que aún funciona.

El siguiente esquema del MZ-700 procede de la página: www.sharpmz.org

Sharp MZ-700
From Wikipedia, the free encyclopedia
MZ-700 series system configuration









La pantalla se dividía en 25 líneas x 40 caracteres en una matriz de puntos de 8x8 y con gráficos de 8 colores).  No había ningún lenguaje en la memoria ROM de 2 KB, usada para el boot o secuencia de arranque inicial de la máquina y las llamadas del Sistema Operativo - OS. En la cara A de una casete venía un intérprete del lenguaje de programación BASIC, con el que podía programar aplicaciones y juegos en sus 64 KB de memoria.


Software de los primeros PCs compatibles

En su manual de programación decía que era un "computador limpio" (nada que ver con estar libre de virus que aún no se había inventado para los primeros PCs), con su memoria totalmente en blanco al encenderlo, y que para usarlo se le debía cargar previamente un lenguaje de programación, con la ventaja de poderle enseñar el lenguaje que se deseara, aunque inicialmente incluía el BASIC "Beginner's All-purpose Symbolic Intruction Code" (Código de Instrucciones Simbólicas de Todo género para Principiantes) y decía que su estructura era la mas cercana a los lenguajes humanos de la época.  Lo más fascinante era que ya no dependía de los ordenadores de la Universidad o de los de la oficina para hacer mis propias incursiones en la informática.

Otro programa que conseguí fue el pionero de las hojas de cálculo, el VisiCalc para el MZ-700 y en cuyo manual se decía que era una hoja electrónica con una matriz bidimensional de 256 columnas y un tamaño máximo limitado por la memoria RAM. Es interesante leer como Implementing VisiCalc by Bob Frankston

VisiCalc había sido desarrollado por Personal Software en 1979 para el Apple II y Microsoft desarrolló Multiplan en 1982 para competir con VisiCalc y lo instaló en los sistemas operativos CP/M y MS-DOS, pero le siguió como éxito de ventas Lotus 1-2-3 desde el 26 de enero de 1983.

Las primeras versiones del simulador de vuelo Microsoft Flight Simulator se usaron como la técnica de pruebas, conocida como benchmark, para saber si un PC era compatible. Si un computador podía correr sin problemas MSFS 1.0 y Lotus 1-2-3 era 100% IBM PC-compatible y, si fallaba, no lo era.

Unos años después de estos primeros PCs un grupo público de programadores ha diseñado un simulador de PC-compatible, el DOSBox con el objetivo de poder ejecutar programas y videojuegos originalmente escritos para el sistema operativo MS-DOS de Microsoft en ordenadores más modernos. ¡La partida de ajedrez continua!


Futuro del Project Chess

Hasta la llegada de los PCs, el programar y jugar al ajedrez con computadoras era un privilegio de una minoría con acceso a los carísimos ordenadores de las universidades o de las empresas. En 1978, un juego de ajedrez corriendo en un PC derrotó a un programa de ajedrez corriendo en un ordenador central de 6 millones de dólares.

computerhistory.org - A History of Computer Chess

El programa de ajedrez WChess de David Kittinger ganó en 1994 cinco de las seis partidas contra grandes maestros norteamericanos en la copa Intel-Harvard "Man vs. Machine".  El 11 de mayo de 1997 fue el día en que el Campeón del Mundo de Ajedrez, Garry Kasparov, perdió contra un computador de IBM, el Deep Blue.  Era capaz de analizar 200 millones de posiciones por segundo.  En noviembre de 2006, el programa Deep Fritz era capaz de emular a Deep Blue con un PC que evaluaba solamente 8 millones de posiciones por segundo, pero que era capaz de buscar una media de 17 a 18 variaciones en el juego medio gracias a sofisticados algoritmos heurísticos, mucho mejores que la fuerza bruta.  En 2009 un motor de juego de ajedrez, Pocket Fritz 4, corriendo en un teléfono móvil alcanzó el nivel de gran maestro.

Hace 7 años se ha creado un club de testers CCRL denominado "Computer Chess Rating Lists" que analiza las partidas entre más de 1000 programas de ajedrez y les dan lo puntos Elo con el nivel de juego que alcanzan.  Sólo 2 jugadores en activo alcanzan los 2800 puntos Elo y ya hay 33 programas que lo alcanzan, aunque no estén homologados por la FIDE.  Se puede consultar la lista en www.computerchess.org.uk


    Project Chess - PC

    $
    0
    0
    Project Chess - PC - Personal Computer

    Project Chess is the code name of the project to design the first IBM Personal Computer. The same acronym is used to refer to Personal Computer and the  Project Chess.

    The first IBM PC model 5150 was released on August 12, 1981 and was the beginning of the greatest chess match in computer history, in which the goal was to win the battle for the computers to become a ubiquitous and pervasive technology in our lives and, for more 31 years, they are achieving!


    My first PC experience

    My first contact with the closest thing to a PC was in 1978 with an HP-97 while I was studying at the University. Until 1987 I was surrounded by calculators and computers from the first generation of personal computers and  from my first programs written in assembler, Basic, Fortran or Pascal and I liked computing so much that I have not stopped programming.


    In those years I devoured all programs and magazines that fell into my hands. The one I liked by far was BYTE, which included all the innovations in both hardware and software in the early days of PCs


    In November 1982 BYTE organized a game contest and my favorite was JETSET - Jet Simulator Electronic Trainer, to fly a plane from takeoff to landing on a computer TRS-80 Model II.

    Three years after the appearance of the PC, in 1984 I bought my first personal computer, and still have, but it was shared with my brother. It was a whole Personal Computer - PC but without diskettes.

    It was a Sharp MZ-700 that did not even have a monitor so, to connect to the only TV in our house, it had an embedded RF modulator.  To program it included a cassette tape recorder at 1200 bits/second and to editing programs it had a robust keyboard that still works.

    The following scheme comes from this MZ-700 page: www.sharpmz.org

    Sharp MZ-700
    From Wikipedia, the free encyclopedia
    MZ-700 series system configuration









    The screen was divided into 25 rows x 40 characters in a 8x8 dot matrix and 8 color graphics. There was no language in its ROM 2 KB, used for booting sequence  and operating system (OS) calls. On the A side of a cassette came a BASIC programming language, with which I could develop applications and games on its 64 KB of memory.


    Software of the first PCs compatible

    In its programming manual said it was a "clean computer" (nothing to do with freedom from virus that had not yet been invented for the first PCs), with his memory completely blank when turned on, and that to use it you should preload a programming language, with the advantage of being able to teach the language desired, although initially included the BASIC "Beginner's All-purpose Symbolic Intruction Code" and said that its structure was the closest to human languages ​​of the time. Most fascinating was that I no longer depended on University or office computers to make my own incursions into computing.

    Another program I got was the pioneer of spreadsheets, the VisiCalc for MZ-700 and whose manual said that it was a spreadsheet with a two-dimensional array of 256 columns and a maximum size limited by RAM. It is interesting to read how it was implemented VisiCalc by Bob Frankston

    VisiCalc was developed by Personal Software in 1979 for the Apple II and Microsoft developed Multiplan in 1982 to compete with VisiCalc and was installed into the CP/M and MS-DOS, but was followed as sales success by  Lotus 1-2-3 from the January 26, 1983.

    Early versions of the Microsoft Flight Simulator were used as the testing software technique, known as benchmark, to test if a PC was fully compatible. If a computer could run smoothly MSFS 1.0 and Lotus 1-2-3 it was 100% IBM PC-compatible and, if it failed, it was not.

    A few years after these first PCs a public group of programmers have designed a PC-compatible simulator, the DOSBox in order to run programs and games originally written for MS-DOS operating system from Microsoft in newer computers. The chess game continues!


    Project Chess future


    Until the advent of computers, programming and play chess with computers was a privilege of a minority with access to expensive computers owned by universities or companies. In 1978, a chess game running on a PC defeated a chess program running on a mainframe that cost 6 million dollars.



    The chess program WChess by David Kittinger in 1994 won five of six games against americans grandmasters in the Intel-Harvard Cup "Man vs. Machine". On May 11, 1997 was the day the World Chess Champion, Garry Kasparov  lost to an IBM computer, Deep Blue  This computer was able to analyze 200 million positions per second. In November 2006, the program Deep Fritz was able to emulate Deep Blue with a PC that assessed only 8 million positions per second, but I was able to find an average of 17-18 variations in the middle game by sophisticated heuristic algorithms al, much better than brute-force. In 2009 a chess engine, Pocket Fritz 4, running on a mobile phone reached the grandmaster level.

    Seven years ago a club called CCRL "Computer Chess Rating Lists" has been created by testers which analyzes over 1,000 games between chess programs and give Elo points with the level of play this programs achieve. Only two active players reach 2800 Elo points and there are 33 programs that reach it, although not approved by FIDE. You can view the list in this page:
    www.computerchess.org.uk


      Cómo traducir localmente fórmulas Excel

      $
      0
      0

      Traducción de fórmulas Excel

      Cuando busco fórmulas en los blogs de los gurús de Excel, todas están en inglés y me resulta imposible copiarlas y pegarlas en mis hojas de cálculo. Seguro que le ha pasado a cualquiera que esté leyendo esto. Otro problema del mismo estilo se me produce cuando intento escribir en un foro en inglés y la fórmula la tengo escrita en español.


      En este enlace se puede descargar la última versión del traductor, pulsando en el botón Descargar del menú de arriba en SkyDrive:

      En Holanda, el excelente MVP Ron de Bruin escribió un artículo sobre internacionalización que explica cómo averiguar la versión y el lenguaje local de Excel y las funciones geolocalizadas a tener en cuenta aquí: rondebruin - international

      Una de las páginas con las que mas aprendo fórmulas Excel es la de Chandoo que está escrita en inglés por el CEO - Chief Excel Officer llamado Purna Duggirala, cuyo propósito es convertirnos en formidables usuarios de Excel. ¡Y lo está consiguiendo con sus excelentes artículos! como éste: chandoo.org - formula forensics no 033

      Claro que ver la fórmula escrita en inglés no ayuda mucho y tampoco se puede introducir en una celda para ver qué pasa, por ejemplo con:

      Lo que pasa es que salta un mensaje de error en la fórmula al introducirla en una versión de Excel en español y no es fácil conseguir modificarla manualmente traduciendo cada una de sus funciones y sustituyendo las comas por puntos y comas, donde corresponda, para obtener la fórmula traducida al español:

      El caso contrario es tener escrita la fórmula en español y quererla traducir al inglés para subirla a un foro internacional.  La traducción directa e inversa de las fórmulas serán resueltas mediante el traductor de fórmulas Excel que te puedes bajar y descargar gratuitamente desde esta página si lees un poco más abajo.

      Tablas de traducción de funciones Excel

      No se trata de usar una tabla de traducciones de las funciones de Excel de un idioma a otro, que de esas hay muchas tablas en Internet, con el agravante de que cada versión de Excel genera nuevos nombres de funciones con sus correspondientes traducciones a varios lenguajes, por ejemplo:

      Este procedimiento de traducción es muy laborioso y nada productivo, siendo propenso a generar errores (error-prone) y siendo difícilmente verificables estos errores de programación (bug-prone), ya que las funciones traducidas no tienen por qué coincidir con las originales, los operadores pueden ser malinterpretados y los argumentos pasados pueden ser incorrectos, lo que es complicado de subsanar y muy lento hasta conseguir la traducción exacta de la fórmula.

      Traductores de fórmulas Excel

      Para resolver la traducción de fórmulas hay varios procedimientos, como los que propone Jorge L. Dunkelman en su blog: jldexcelsp - traduccion de funciones excel

      No quiero dejar de mencionar a David McRitchie que ha explicado en su página Web varios métodos para traducir fórmulas del inglés a otros idiomas, sobre todo con el uso de la Ventana Inmediato en el Editor de macros VBE: dmcritchie.mvps.org - excel/language

      Traductor de fórmulas al inglés o al lenguaje local de Excel

      Una primera versión de este traductor la colgué en AyudaExcel.com hace dos años para compartirla con mis amigos del foro: ayudaexcel.com - traducir formulas al ingles al idioma local excel

      En este enlace se puede descargar la última versión del traductor, pulsando en el botón Descargar del menú de arriba en SkyDrive:

      En la columna A escribe el signo de apóstrofo (') seguido de la fórmula en inglés. Escribe fórmulas en español directamente. (Introduce las fórmulas en las celdas marcadas en amarillo).

      Cada una de las columnas del fichero indican lo siguiente:
      Columna AFórmula original
      Columna BFórmula en español
      Columna CFormula in English
      Columna DFormula resultante

      En la celda A2 he incluido la fórmula en inglés copiada de la página de Chandoo.org, que aparece traducida al español en la celda B2. En la celda D2 se muestra el resultado de aplicar la fórmula que, al no ser correcta, resulta: #N/A. Si se introduce una fórmula en inglés en la columna A, se verá su traducción al español pero no la interpretará correctamente, indicando el error: #¿NOMBRE? (Ver la celda A7).

      El carácter separador de listas y de argumentos de funciones de Excel en inglés es la coma (",") y en español es el punto y coma (";").  Este separador no se configura desde las opciones de Excel sino desde el Panel de Control del sistema operativo, entrando en la Configuración Regional y de Idioma, en Configuración Adicional, Personalizar formatos de Números, modificando el Separador de Listas.

      El traductor de fórmulas está basado en dos propiedades del VBA de Excel:


      El código macro para traducir las fórmulas está en la hoja "Formula":


      Paquetes de Office de Interfaz de Idiomas

      No quiero dejar de comentar un método para traducir fórmulas que permite la traducción entre dos idiomas sin ser uno de ellos el inglés.  El inconveniente es que hay que estar conmutando continuamente entre un idioma y otro para ver la traducción de las fórmulas.

      Entrando en las Opciones de Excel y eligiendo la opción de Idioma, se pueden ver los idiomas instalados de Office y elegir los idiomas de la Ayuda y de la interfaz de usuario, siempre que se hayan agregado.


      Para descargar idiomas adicionales, agrega nuevos idiomas desde las opciones de Excel o visita estas páginas:
      office.microsoft.com - office language interface pack lip downloads
      office.microsoft.com - necesito un paquete de idioma o un paquete de interfaz de idiomas

      Si quieres saber más sobre la localización de fórmulas y funciones de Excel puedes leer estos artículos:
      pedrowave.blogspot.com - traductor de 58 idiomas en excel


      How to translate Excel formulas locally

      $
      0
      0

      Excel formulas translation

      When I search formulas in the blogs of Excel gurus, all are written in English and I can not copy and paste them into my spreadsheets. Sure that ever happened to anyone reading this. Another problem of the same kind occurs when I try to write in English Forum a formula I have written in Spanish language.


      In this link you can download the latest version of the translator, by pressing the Download button in the menu at the top of my SkyDrive:

      In Holland, the excellent MVP Ron de Bruin wrote an article explaining internationalization how to determine the version and the local language of Excel and geolocated features to consider: rondebruin - international

      One of the pages with Excel formulas to learn more is Chandoo.org written in English by the CEO - Chief Excel Officer, Purna Duggirala, whose purpose is to become us formidable Excel users. And it is getting with its excellent items! like this: chandoo.org - formula forensics no 033

      Of course I see the formula written in English does not help much and can not enter in a cell to see what happens, for example:

      What happens is that you receive an error message when you enter the formula in a version of Excel in Spanish and are not readily available by translating manually each change of its functions and replacing the commas by semicolons, where applicable, to obtain this formula translated into Spanish:

      The reverse case is to have the formula written in Spanish and want to translate into English to upload it to an international forum. The forward and backward translation of the formulas will be resolved by my Excel formula translator that you can download for free from this page if you read a little further down.

      Tables to translate Excel functions

      Do not try to use a table to translate Excel functions from one language to another, such that there are many tables on the Internet, with the added difficulty that each new version of Excel generates function names with their translations to various languages, eg:

      This translation process is very laborious and an example of bad productivity, being prone to error (error-prone) and being difficult to verify these bugs (bug-prone), as translated functions not match with the original, operators can be misinterpreted and the arguments passed may be incorrect, which is difficult to correct and very slow to get the exact translation of the formula.

      Excel formulas translators

      To solve the translation of formulas are suggested several procedures, such as those proposed by George L. Dunkelman in his blog: jldexcelsp - traduccion de funciones excel

      I don't forget to mention at David McRitchie who has explained on his website several methods to translate formulas from English into other languages, especially with the use of the Immediate window in the VBE Macro Editor: dmcritchie.mvps.org - excel/language

      Formula Translation in English or the Excel local language

      I loaded an early version of this translator into the AyudaExcel.com two years ago to share it with my friends on the forum: ayudaexcel.com - traducir formulas al ingles al idioma local excel

      In this link you can download the latest version of the translator, by pressing the Download button in the menu at the top of my SkyDrive:

      In column A write the apostrophe character (') followed by the formula in English. Write formulas in Spanish directly. (Enter formulas in cells marked in yellow).

      Each file columns indicate the following:
      A column Original formula
      B columnSpanish formula
      C columnEnglish formula
      D columnResult formula

      In cell A2 I have included the English formula copied from the Chandoo.org page, translated into Spanish appears in cell B2. In cell D2 shows the result of applying the formula, not being correct: #N/A. If you enter a formula in column A in English, will be translated into Spanish but not interpreted correctly, indicating the error: #NAME? (See A7 cell).

      The list separator character for Excel function arguments in English is the comma (",") and in Spanish is the semicolon (";"). This separator is not set from Excel options but from the Control Panel of the operating system, entering the Regional and Language Settings, Additional Settings, Custom number formats, and modifying the list separator.

      The formula translator is based on two properties of Excel VBA:

      The macro code to translate formulas is in the worksheet "Formula":


      Office Language Interface Pack (LIP)

      I do wish to comment on a method to translate formulas allowing translation between two languages ​​without being one of them English. The downside is that you have to be constantly switching from one language to another to see the translation of formulas.

      Going into Excel Options and selecting the language, you can see the languages ​​installed in Office and choose the languages of the Help and the user interface, if it has been added.


      To download additional languages, adds new languages ​​from Excel options or visit these pages:
      office.microsoft.com - office language interface pack lip downloads
      office.microsoft.com - do i need a language pack or language interface pack

      To learn more about the location of Excel formulas and functions you can read these articles:
      pedrowave.blogspot.com - languages translator in excel


      Horas entre fechas

      $
      0
      0

      ¿En que empleo las horas entre fechas de cambio laboral?

      En escribir este artículo, que es el número 100 de este blog, que pronto alcanzará las 200.000 páginas vistas, aunque realmente he escrito 50 artículos originales en dos versiones, española e inglesa.

      ¿Para qué sirve este artículo?

      La plantilla en Excel que publico, y que se puede descargar más abajo, sirve para obtener el número de horas entre dos fechas cualesquiera, con hasta 4 rangos horarios diferentes y sin la condición de que las horas inicial y final estén dentro de los horarios de trabajo, permitiendo elegir qué días de la semana son laborables (fin de semana tradicional de sábado y domingo o solamente domingos o cualquier otro día).

      Para un rango o turno horario se emplea este esquema para su cálculo que, extrapolándolo sirve para calcular diferentes rangos o turnos, simplemente sumándolos.



      ¿A quién le puede servir?

      A los profesionales de Recursos Humanos, a los gestores de proyectos y presupuestos, a los gerentes que calculan los esfuerzos en horas-hombre u horas-persona, a los trabajadores a tiempo parcial, a los pluriempleados, a los maestros y profesores para organizar sus clases y, en general, a quien necesite saber cuántas horas dedica a la formación, al trabajo, al ocio, etc.

      ¿En qué me he inspirado?

      Hace más de dos años yo estaba haciendo calendarios en Excel para este blog y mi amigo Chandoo lanzó un reto: "¿Cuántas horas trabajò Johnny?"

      ¿Cómo resolví el reto?

      Me puse inmediatamente a calcular las horas trabajadas entre dos fechas por Johnny, sin contar sábados, domingos ni festivos y obtuve esta fórmula que tuvo mucho éxito por su simplicidad:

      Siendo B3 la fecha y hora inicial y C3 la fecha y hora final, para 9 horas laborables.

      Chandoo me felicitó por esta fórmula en su siguiente artículo "Cómo calcular las horas trabajadas entre dos fechas" y unos cuántos simpatizantes comenzamos a comentar nuestras fórmulas, entre ellos los gurús de Excel Daniel Ferry y Chip Pearson.

      ¿Cómo calcular una solución más general?

      La fórmula anterior y las propuestas por Daniel Ferry, Michael, sexseven y Elias tenían como condición que tanto las horas de inicio y final están dentro del horario de trabajo y Chandoo nos volvió a retar para resolver un problema que podría ser aún más interesante, obtener las horas de trabajo entre dos fechas dadas sin la condición de que tanto la hora de inicio como la hora final están dentro de los horarios de trabajo.

      Me puse a analizar y a recopilar todas las propuestas de mis compañeros del foro Chandoo.org y todo lo que encontré en la Web y, al no ver una solución inteligente, me puse a desarrollarla durante 5 días hasta llegar a esta nueva fórmula:

      Siendo:
      DecimalHours = $D$29 – $D$28 (número de horas de trabajo diario)
      $D$28 = Hora inicial del trabajo
      $D$29 = Hora final del trabajo

      ¿Qué me hace retomar de nuevo el cálculo de horas entre fechas?

      Hace cuatro días jcascon11 planteó una consulta en el foro de AyudaExcel:

      Calcular tiempo en horas entre dos fechas sin festivos ni fines de semana y con rango horario

      Necesito calcular el tiempo entre una fecha inicial y una fecha final sin contar festivos, sábados y domingos y con este rango horario
      De lunes a jueves el horario a contar es de 8:00 a 15:00 y de 17:00 a 19:30
      Los viernes de 8:00 a 15:00
      ¿Alguien me puede ayudar?


      ¿Cómo calcular las horas con más de un rango horario de trabajo?

      Puedes descargar el fichero con los cálculos según la versión de Excel:
      - Columna D para Excel 2003 y 2007, que usa las columnas auxiliares E:K
      - Columna C para Excel 2010 y posteriores, que usa la nueva función:
      DIA.LAB.INTL(fecha_inicial; días_lab; [fin_de_semana]; [festivos])

      Los valores de las cadenas de fin de semana tienen siete caracteres de longitud y cada carácter de la cadena representa un día de la semana, comenzando por el lunes. 1 representa un día no laborable y 0 representa un día laborable. Sólo se permiten los caracteres 1 y 0 en la cadena. 1111111 no es una cadena válida. Por ejemplo, 0000011 daría como resultado un fin de semana que es sábado y domingo.

      En los dos casos empleo variantes de la fórmula que propuse hace más de dos años en el foro de Chandoo, aunque en Excel 2010 se puede hacer con una única megafórmula y con versiones anteriores de Excel hacen falta columnas auxiliares para hacer lo mismo.

      ¿Dónde descargo la plantilla?

      Presionando en este enlace y en el botón de Descarga de SkyDrive.


      ¿Por qué no lo pruebas en la nube tú mismo?

      Esta es la plantilla interactiva para los que no tienen Excel 2010 y quieran ver el resultado del total de horas en la columna C con esta versión de Excel. Se pueden modificar todas las celdas con fondo amarillo.

      Como Microsoft no contempla las validaciones de datos en Excel Web App, se debe introducir obligatoriamente un 0 (día laboral) o un 1 (día no laboral) en el rango E2 a K5.



      ¿Cómo he probado si el cálculo de las horas es correcto?

      Introduciendo rangos de días diferentes, con la ayuda de estas dos fórmulas que se basan en la función ALEATORIO() incluidas en las celdas A25:B34 para la Fecha inicial (columna A) y Fecha final (columna B):
      Los valores elegidos son 41275 para el 01-01-2013 y 41640 para el 01-01-2014.

      En la columna L comparo las horas calculadas en Excel 2010 (columna C) y en otras versiones (columna D) con la siguiente fórmula:


      ¿Dónde seguir aprendiendo a calcular fechas y horas con Excel?

      Aunque hay muchos sitios, como el blog de Chandoo para los que sepan inglés, no está mal comenzar por la web de preparación para opositores de José Enrique Martínez: Cálculos con fechas y horas en Excel

      ¿Continuaré escribiendo artículos en este blog?

      Hasta ahora tengo que agradecer enormemente la buena acogida que está teniendo este blog entre los curiosos que se acercan a los interfaces gráficos de usuario y a los que buscan una ayuda para resolver sus cálculos en Excel.

      En función del tiempo que tenga, en adelante haré lo posible por seguir aportando ideas y ejemplos de estos dos maravillosos mundos, tratando de que sirvan de ayuda a mis lectores.  Lo que si es seguro es que a mí me sirven para plantear y resolver problemas y para retarme e intentar experimentar y dominar un poco más cada día estas ondas de cálculo y programación.

      Hours between dates

      $
      0
      0

      What do I spend the hours between dates of job change?

      In writing post #100 of this blog, that will soon reach the 200,000 page views, but really I have written 50 original articles in two versions, English and Spanish.

      What is the purpose of this article?

      I share with you a public Excel template, that it can be downloaded below, used to obtain the number of hours between two dates, with up to 4 different time ranges and without the condition that the start and end times are within the work hours, allowing you to choose which days of the week are working days (traditional weekend of Saturday and Sunday or just Sunday or any other day).

      Next scheme is used to calculate one hour range, extrapolating it is used to calculate different hour ranges, simply adding them.


      Who would this template may be useful?

      To Human Resources professionals, project managers, budgets managers that calculate manhours efforts or hours-person, part-time workers, the moonlighters, teachers and professors to organize their classes and, in general, those who need to know how many hours dedicated to training, work, leisure, etc..

      What inspired me?

      Over two years ago I was doing Excel calendars for this blog and my friend Chandoo threw out a challenge: "How many hours did Johnny work? [Excel Homework]"

      How I solved the challenge?

      I immediately started calculating the hours worked between two dates by Johnny, excluding Saturdays, Sundays and holidays and I got this formula which was very successful in its simplicity:

      Being B3 the start date and time and C3 the end date and time, working for nine hours.

      Chandoo congratulated me on this formula in his next article "How to Calculate Working Hours Between 2 Dates [Solution]" and a few supporters began to discuss our formulas, including Excel gurus as Daniel Ferry and Chip Pearson.

      How to calculate a more general solution?

      The above formula and the proposals by Daniel Ferry, Michael, sixseven and Elias had a condition that both start and end hours are within working hours and Chandoo challenge us again to solve a problem that could be even more interesting, get working hours between two dates without the condition that both the start time and end time are within working hours.

      I started to collect and analyze all the proposals of my fellow forum Chandoo.org and everything I found on the Web and, not seeing a smart solution, I started to develop for 5 days to get this new formula:
      Where:
      DecimalHours = $D$29 - $D$28 (number of daily working hours)
      $D$28 = Start work hour
      $D$29 = End work hour

      What makes me take up again the calculation of hours between dates?

      Four days ago a query posed by jcascon11 in the AyudaExcel forum:

      Calculate time between two dates in hours without holidays or weekends and with a time range

      I need to calculate the time between start date and end date excluding holidays, Saturdays and Sundays and this the time range:
      Monday to Thursday working hours are from 8:00 to 15:00 and 17:00 to 19:30
      Fridays from 8:00 to 15:00
      Anybody can help me?


      How to calculate the hours over a time range of work?

      You can download the file with the calculations based on the version of Excel:
      - Column D for Excel 2003 and 2007, using the auxiliary columns E:K
      - Column C for Excel 2010 and later, using the new function:
      WORKDAY.INTL(start_date, days, [weekend], [holidays])

      Weekend string values are seven characters long and each character in the string represents a day of the week, starting with Monday. 1 represents a non-workday and 0 represents a workday. Only the characters 1 and 0 are permitted in the string. 1111111 is an invalid string. For example, 0000011 would result in a weekend that is Saturday and Sunday.

      In both cases I use variations of the formula I proposed more than two years ago in the Chandoo, but in Excel 2010 you can do it with a single megaformula and in earlier versions of Excel you need auxiliary columns to do the same.

      Where do I download the template?

      Clicking on this link and in the SkyDrive Download button.


      Why not try it yourself in the cloud?

      This is the interactive template for those without Excel 2010 and for those want to see the result of the total hours in column C with this version of Excel. You can modify all cells with yellow background.

      As Microsoft does not provide data validations in Excel Web App, a mandatory 0 (working day) or 1 (non-working day) must be entered in the range E2 to K5.



      How I tested if the calculation of the hours is correct?

      Introducing ranges of different days, with the aid of these two formulas that are based on the RAND() function included in the cell A25:B34 for the start date (column A) and end date (column B):
      The chosen values are 41275 to 01/01/2013 and 41640 to 01/01/2014.

      I compare in the column L the hours calculated in Excel 2010 (column C) with other versions (column D) with the following formula:


      Where keep learning to calculate dates and times in Excel?

      Although there are many sites like Chandoo's blog, and not bad to begin with the site by Chip Pearson: Dates And Times In Excel

      Will I continue writing articles on this blog?

      Until now I have to greatly appreciate the welcome that is having this blog among the curious who come to the graphical user interfaces and looking for help to solve their calculations in Excel.

      Depending on the time I have, henceforth I will do my best to continue contributing with ideas and examples of these two wonderful worlds, trying to bring aid to my readers. What is certain is that I used to plan and solve problems and order to challenge myself and try to experiment and master a little more each day these waves of calculation and programming.

      Lector de libros de texto en Excel

      $
      0
      0

      Excelentes libros

      Siempre me ha gustado la lectura de los clásicos y, con el invento de Internet - la llamada World Wide Web - WWW, desde la década de los 90 es más fácil que nunca acceder a los libros de los grandes escritores de la literatura clásica y moderna.

      Uno de los sitios con más libros en formato texto es el Proyecto Gutenberg en memoria del inventor de la imprenta Johannes Gutenberg.

      Pero hay un inconveniente, en la biblioteca del portal gutenberg.org no se encuentran clasificados los libros escritos en español, sólo en inglés, francés, alemán y portugués. ¿No será que a los hispanos nos gusta más ver fútbol que leer?

      Día Internacional del Libro

      El 23 de abril se celebró el Día del Libro y, como llevo mucho tiempo con la idea de crear un lector de libros electrónicos basado en Excel, pensé que era una fecha señalada para presentar el prototipo de lector de libros que inicié hace unos meses y que dejé sin terminar. Lo hice en el foro AyudaExcel.com

      Prototipo de un lector de libros en Excel

      Mi desilusión llegó cuando el único comentario fue relacionado con el partido Bayern-Barcelona (4-0) que se jugaba ese día ¡menuda aspirina (sin la n) que metieron los alemanes a los ánimos de nuestros vecinos catalanes! y ninguna mención a los libros electrónicos y al fomento de la lectura que es el objetivo de este día del libro, cuya capital este año era Bangkok, capital de Tailandia. ¡¿ Un balón jugado con los pies puede más que un libro leído con la cabeza?!

      Bibliotecas con libros de texto

      Llevo mucho tiempo con la idea de crear un lector de libros electrónicos basado en Excel y he dedicado muchas horas a este prototipo que inicié hace unos meses y que dejé sin terminar.

      Este lector me sirve para poder leer libros en texto plano, modificando el formato de los caracteres y el tamaño de la letra, descargados desde alguna página como ésta con miles de libros en diferentes idiomas:

      Wordtheque del Proyecto Gutenberg

      Su página oficial es según la Wikipedia: Logos Library que contiene más de 13.000 libros en español.

      En la hoja Biblioteca puedes añadir más libros:

      LibroTítuloAutorDirectorioFichero
      1ResurrecciónLeón Tolstoyhttp://ebooks.gutenberg.us/Wordtheque/es/aaarzc.txt
      2DAVID COPPERFIELDCHARLES DICKENShttp://ebooks.gutenberg.us/Wordtheque/en/cprfd10.txt
      3El crimen fue en GranadaAntonio Machadohttp://ebooks.gutenberg.us/Wordtheque/es/aaarve.txt
      4RESURRECTIONLEV NIKOLAYEVICH TOLSTOYhttp://ebooks.gutenberg.us/Wordtheque/en/aaabnhr.txt

      Lector de libros en Excel

      Aún le falta mucho a este prototipo para ser un lector de libros profesional, por lo que no me responsabilizo del uso que puedas hacer de él y de los bugs que contiene. Si te animas, intenta mejorarlo y compártelo en este blog. Te estaré muy agradecido. Otros intereses me impiden continuar con este proyecto.

      ATENCIÓN: No funciona en Excel 2007. Va mejor en Excel 2010 que en Excel 2003.


      Para los que les gusta leer hasta los textos de ayuda, he preparado esta página:




      Estadísticas de Pedro Wave

      $
      0
      0

      Estadísticas de Pedro Wave for Excel Guys

      Desde que publiqué mi Mi primera ola en este blog, hace 3 años, he publicado 100 artículos en español y en inglés que han sido leídos por más de 100.000 visitantes.

      Visits Counter






      Tráfico de este blog según Alexa

      Este blog dedicado a compartir conocimientos de los interfaces gráficos de usuario con ejemplos en Excel está posicionado entre los primeros 5 millones de páginas Web más vistas en Internet según Alexa dónde puedes ver sus estadísticas:


      Mis estadísticas en Blogger

      Adjunto una hoja Excel con las estadísticas de este blog, con más de 200.000 páginas leídas y con enlaces a las páginas más vistas:




      Descarga de las estadísticas




      Generadores de estadísticas

      Tengo que dar las gracias a los lectores de este blog que han generado estas estadísticas tan excelentes hasta el presente y a todos los nuevos lectores que encuentren este blog en Internet y se sumen leyendo los artículos escritos hasta ahora y los que vendrán en los próximos años.

      ¡Que usted lo lea bien y se anime a publicar sus propias experiencias en Excel!

      Lee este blog en las redes sociales




      Descomposición factorial en números primos

      $
      0
      0

      Problemas de descomposición

      Ahora que estamos en época de exámenes, ¿a quién no le ha surgido una descomposición factorial o metabólica?, pues las dos acepciones se encuentran en el Diccionario de la Lengua Española:
      descomposición.
      1. f. Acción y efecto de descomponer o descomponerse.
      2. f. coloq. diarrea.

      diarrea mental.
      1. f. coloq. empanada mental.

      No vamos a hablar de la diarrea mental o de la empanada mental que surge cuando nos hemos empapuzado de tantos temas, del examen o de la oposición, que no los podemos digerir ni descomponer para responder a las preguntas del examen, sino de una descomposición mental y matemática.

      Si alguien cree que la factorización de enteros se resuelve con una fórmula simple está muy equivocado.  Los algoritmos que tratan de descomponer un número en sus factores primos son una buena baza para poner a trabajar a los ordenadores cuánticos, los más potentes diseñados hasta el momento. Uno de los algoritmos más conocidos es el Algoritmo de Shor.

      Problema RSA

      El día que el algoritmo de Shor funcione en una computadora cuántica no servirán de nada los códigos secretos que usamos para hacer una transacción electrónica o firmar un documento con nuestro DNI electrónico.  Todas las claves públicas RSA será posible descifrarlas, es el conocido como el Problema RSA en criptografía que confía en la seguridad de no poder hallar los dos números primos que descomponen una clave secreta en tiempo polinómico de computación.

      Me surge una duda, las agencias de inteligencia norteamericana ¿ya tienen ordenadores cuánticos capaces de descifrar claves secretas, descomponiendo factorialmente la clave en sus dos números primos?  Si es así, nuestra privacidad está por los suelos y también nuestra confianza en la seguridad de nuestros datos y nuestras comunicaciones privadas.  El programa de vigilancia PRISM puede haber acabado con ellos, según informan en los siguiente enlaces de actualidad:

      Lo que está en juego es que ni siquiera seremos autores de nuestros propios artículos si cualquiera puede suplantarnos usando nuestras claves secretas o creándolas en lugar nuestro (por si creen que sin usar Internet estarán libres de la suplantación de su identidad digital).

      Descomposición factorial

      En este artículo no trataremos de romper claves compuestas por números primos extremadamente largos, sino de 6 cifras o hasta 1.000.000, con una plantilla que sirva en la escuela o el instituto y que pueda ser subida a la nube para poder ejercitarnos en la búsqueda de los factores primos en cualquier lugar con conexión a Internet.


      La descomposición factorial permite obtener los números primos con sus potencia, que son divisores de un número entero.  Por ejemplo:
      70776 = 2³ · 3² · 983
      Se acuerda usar el símbolo de puntuación "·" como operador de multiplicación de una factorización de números primos, aunque se pueden usar otros símbolos, como: . (punto decimal), x (signo por), * (signo asterisco).

      A la derecha está la descomposición factorial del entero 70776, como producto de los factores primos: 2, 3 y 983.  El número 2 está elevado a la 3ª potencia, pues es necesario multiplicarlo tres veces:
      2³ =2 x 2 x 2 = 8.

      Números primos

      En el ejemplo anterior es fácil obtener los factores 2 y 3 pues son números pequeños, pero no es tan fácil saber si 983 es primo.

      Los números primos son números naturales (enteros mayores que 1) que son divisibles por 1 y por sí mismos, y hay infinitos. El conjunto de todos los números primos se representa con el símbolo: \mathbb{P}

      Uno de los métodos para averiguar si un número compuesto es primo es probar a dividirlo por cada uno de los números primos menores que él y si no hay ninguno que lo divida se puede asegurar que es primo.

      Hay números primos especiales como los que comenta la novela La soledad de los números primos, son los números primos gemelos, que son dos números primos impares seguidos (excepto el 2, todos los números primos son impares) como el 11 y el 13, el 17 y el 19, o el 41 y el 43.

      En los siguientes enlaces se pueden estudiar algunos de los problemas conocidos con números primos, que tantos quebraderos de cabeza dan a los estudiosos de la teoría de números:

      Descomposición en la nube de SkyDrive

      A raíz de una consulta de un profesor de matemáticas, AyudaExcel.com - Fórmula o macro para expresar una factorización prima en potencias, se me ocurrió realizar esta plantilla en Excel 2010, que permite practicar la descomposición factorial de un número compuesto en sus factores primos desde SkyDrive, sin necesidad de tener instalado Excel, gracias a resolverlo solamente con fórmulas, pues las macros no se pueden subir a la nube de Microsoft en Excel 2007 o 2010.

      NOTA: En esta hoja se puede editar la celda B11 y el rango C11:C30, ¡no modifiques otras celdas!

      AVISO: Para borrar los números, si no funciona la tecla de retroceso o Supr, escribe un espacio en blanco y la tecla de retroceso para dejar la celda vacía.



      Descarga plantilla compatible con Excel 2003

      Baja la 4ª versión de SkyDrive. Admite números entre 2 y 2.251.799.999.999
      La versión en la nube ExcelWebApp solamente admite hasta 1.000.000
      La ayuda con ? no funciona en Excel 2003 para valores muy grandes.

      PARA DESCIFRADORES:
      Un carácter oculto, escrito en la celda C11, calcula automáticamente los factores primos del número escrito en B11.  
      ¿Eres capaz de adivinarlo?

      Descarga la plantilla desde este enlace:


      Hoja Factores
      • Celda B11 - Introducir el número compuesto a descomponer factorialmente (entre 2 y 1000000).
      • Rango C11:C30 - Introducir los factores primos que descomponen factorialmente el número anterior. (avisa si no es primo o si no divide el número compuesto)
      • Celda B8 - Se visualiza la descomposición factorial como potencias de números primos. (ejemplo 234 = 2 · 3² · 13)
      • Celda F10 - Para cambiar el símbolo multiplicador de los factores primos , por defecto "·" (ejemplo:  ·  x  .  * ).
      Hoja Primos
      • Rango A2:A21 - Fórmula para averiguar si es un número primo si es mayor que 0.
      • Rango B2:B21 - Lista los números primos en orden creciente.
      • Rango C2:C21 - Calcula el número de repeticiones de cada número primo.
      • Rango D2:D21 - Obtiene la descomposición factorial.
      • Rango G2:H21 - Lista auxiliar de los superíndices para representar gráficamente las potencias de los números primos (hasta la 20).
      Hoja Divisores
      • Rango A2:A21 - Con los números compuestos de Factores!B11:B21
      • Rango B2:B21 - Fórmula matricial para obtener los factores primos.
      • Rango C2:C21 - Divisores de los números compuestso y sus factores.
      • Rango D2:D21 - Número primo, factor primo ó menor que F1.
      • Celda F1 - Para que el usuario averigüe los divisores menores que este valor, por defecto: 20.
      Fórmula matricial para obtener los factores primos:
      Gracias a esta fórmula, al introducir el signo "?" sin las comillas en el rango Factores!C11:C30, se puede conocer cuál es el factor primo.

      Fórmulas para identificar números primos

      La fórmula para averiguar si un número es primo la he sacado del gran experto en Excel, José Ramón García, en su página web:

      La siguiente fórmula matricial (introducida pulsando a la vez las teclas: Ctrl + Mayús + Entrar) permite saber si un número es primo (resultado mayor que 0), hasta el 4.295.098.367 en Excel 2003 y hasta el 1.099.513.724.928 en las versiones posteriores, suficiente para valores de 1000 (raíz cuadrada de 1.000.000 que es el número compuesto máximo de esta plantilla).
      Con la 4ª fórmula del enlace anterior se puede averiguar si un número de 15 cifras es primo (máxima precisión de Excel). Con macros en VBA se puede resolver para más dígitos con un tiempo de computación mayor con una función como ésta:
      Número primoLongitudTiempo de proceso
      5350061388143591500:00:18
      48474645444342411600:00:54
      553507764319032431700:03:03
      4964811001211441691800:09:12
      60823947492067816971900:32:19

      Pero esto lo dejo para próximos artículos sobre cálculos con grandes números, de momento si nos fiamos de Edward Snowden en cuanto a la protección que ofrece la encriptación:
      "La encriptación funciona. Los sistemas de cifrado fuertes correctamente implementados son una de las pocas cosas en las que usted puede confiar. Desafortunadamente, la seguridad extrema es tan terriblemente débil que la NSA puede encontrar con frecuencia maneras de saltársela."

      Prime factorization decomposition

      $
      0
      0

      Decomposition problems

      If someone believes that the integer factorization is solved with a simple formula is very wrong. The algorithms that try to break down a number into its prime factors are an asset to put to work quantum computers, designed the most powerful so far. One of the best known algorithms is the Shor's algorithm.

      RSA problem

      The day that run Shor's algorithm on a quantum computer will be of no use secret codes to make an electronic transaction or signing a document with our electronic ID. RSA public keys will be possible to be deciphered, is known as the RSA problem in cryptography that relies on the security of not being able to find the two primes that decompose a secret key in computation polynomial time.

      One doubt arises to me. U.S. intelligence agencies already have quantum computers able to decipher secret codes and to key factorially decomposing into its two prime numbers? If so, our privacy is in tatters and also our confidence in the security of our data and our private communications. The PRISM monitoring program can be finished them off, as reported in the current following links:

      What is at stake is to not even be authors of our own issues, if anyone can supplant us using our secret keys, or creating them instead of us (in case you believe that without using the Internet will be free of impersonation of your digital identity).

      Factorial decomposition

      This article does not try to break composite keys extremely long into prime numbers, but with 6 digits or up to 1,000,000, with an Excel template to serve in school or college and can be uploaded to the cloud in order to exercise ourselves in finding the prime factors anywhere with internet connection.


      The factorization allows you to obtain the prime numbers with exponents, which are divisors of an integer. Eg
      70776 = 2³ · 3² · 983
      It agreed to use the punctuation symbol "·" as a multiplication operator prime factorization, although you can use other symbols, such as:. (decimal point), x (sign for), * (asterisk sign).

      On the right is the integer factorization of 70776, as a product of prime factors: 2, 3 and 983. The number 2 is raised to the 3rd power, it is necessary to multiply three times:
      2³ =2 x 2 x 2 = 8.

      Prime numbers

      In the above example it is easy to obtain the factors 2 and 3 as they are small numbers, but not so easy to know if 983 is prime.

      Prime numbers are natural numbers (integers greater than 1) that are divisible by 1 and by themselves, and there are infinite. The set of all prime numbers is represented by the symbol: \mathbb{P}

      One method to determine whether a composite number is prime is to try to divide it by each of the prime numbers smaller than it and, if there is none that can divide it, you can ensure it is a prime number.

      There are special primes as commenting The Solitude of Prime Numbers novel, are the twin primes, which are two consecutive odd prime numbers (except 2, all prime numbers are odd) as 11 and 13, 17 and 19, or 41 and 43.

      In the following links you can explore some of the known problems with prime numbers, that many headaches facing students of the number theory:

      Decomposition into SkyDrive cloud

      Following a question from a math teacher I thought making this template in Excel 2010 that allows to practice factorization of a composite number into its prime factors from SkyDrive, without having Excel installed, thanks to solving only with formulas because macros can not be uploaded to the cloud from Microsoft Excel 2007 or 2010.

      NOTE: You can edit the cell B11 and the range C11:C30, do not modify the other cells!

      NOTE: To erase numbers, if backspace or delete keys not work, type a space and a backspace, so that the cell is empty.



      Download template compatible with Excel 2003

      Download the latest version below that allows numbers between 2 and 2,251,799,999,999
      The ExcelWebApp cloud version only supports up to 1,000,000
      Help with "?" character does not work in Excel 2003 for very large values​​.

      GUESSING GAME FOR DECODERS:
      A hidden character, written in cell C11, automatically calculates the prime factors of the number written on B11. Can you guess?

      Download English templates for Excel 2003, 2007 and 2010 from this link:


      Factores sheet (factors)
      • Cell B11 - Enter the composite number (between 2 and 1000000).
      • Range C11:C30 - Enter the prime factors that decompose the previous composite number. (warns if not prime or not divide the composite number)
      • Cell B8 - Factorization is displayed as powers of prime numbers. (eg 234 = 2 · 3² · 13)
      • Cell F10 - To change the multiplier symbol of the prime factors, default "·" (eg:  ·  x  .  * ).
      Primos sheet (primes)
      • Range A2:A21 - Formula to find out if it is a prime number when it is greater than 0.
      • Range B2:B21 - List the prime numbers in increasing order.
      • Range C2:C21 - Calculate the number of repetitions of each prime.
      • Range D2:D21 - Gets the factorization.
      • Range G2:H21 - Superscripts of exponents auxiliary list to graphically represent powers of prime numbers (up to 20th).
      Divisores sheet (dividers)
      • Range A2:A21 - Composite numbers of the range Factores!B11:B21
      • Range B2:B21 - Array formula to obtain the prime factors.
      • Range C2:C21 - Dividers of the composite numbers and their factors.
      • Range D2:D21 - Prime number, prime factor or less than F1 cell.
      • Cell F1 - For the user to find out the dividers less than this value, default: 20.
      Array formula to obtain the prime factors:
      With this formula, by introducing the "?" character, without the quotation marks, in the range Factors!C11:C30, you can know which is the prime factor.

      Formulas for identifying prime numbers

      The formula to determine if a number is prime the've taken by the expert in Excel, José Ramón García, on their website:

      The following array formula (entered by pressing both keys: Ctrl + Shift + Enter) lets you know if a number is prime (result greater than 0), up to 4,295,098,367 in Excel 2003 to 1,099,513,724,928 in later versions, values ​​sufficient for 1000 (1,000,000 square root of which is the maximum composite number in this template).
      With the 4th formula in above link you can find out if a number is prime to 15 digits (maximum accuracy of Excel). With VBA macros can be solved for more digits with a higher computation time with a function like this:
      Prime numberDigitsProcess time
      5350061388143591500:00:18
      48474645444342411600:00:54
      553507764319032431700:03:03
      4964811001211441691800:09:12
      60823947492067816971900:32:19

      But this I leave to future articles on calculations with large numbers of time if we trust Edward Snowden in terms of the protection offered by encryption:
      "Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on. Unfortunately, endpoint security is so terrifically weak that NSA can frequently find ways around it."

      Teclado virtual internacional

      $
      0
      0

      Antecedentes

      A comienzos de los años 80 elegí, como Proyecto Fin de Carrera en Ingeniería Industrial, el diseño de un terminal inteligente acoplado acústicamente a un ordenador central.

      Monté un prototipo funcional con un microprocesador que controlaba un teclado QWERTY y mostraba los caracteres en un televisor CRT. Fue mi primer contacto con la codificación de los caracteres ASCII y en esas sigo con este teclado virtual con códigos Unicode para generar los caracteres en el terminal "inteligente", siempre que le mostramos la lógica de cómo hacerlos, sino es tan tonto como cualquier caja tonta, sea una televisión o sea una caja de texto conocida como textbox en lenguaje anglosajón.



      Teclado virtual internacional

      Basándome en la idea de Macro Antonio de un teclado virtual, que verzulsan (con su ametralladora para repetir teclas) y yo (con las fuentes y el zoom de texto) modificamos hace tiempo en el foro AyudaExcel.com (enlace aquí), me permito subir una versión mejorada que incluye:
      1. Teclado traducido al Español, Latinoamericano, English, Français, Italiano, Deutsch, Português, con posibilidad de añadir más idiomas en la hoja "Teclas".
      2. Varios layouts: QWERTY, QWERTZ (alemán), AZERTY (francés) y teclado Dvorak en español e inglés.
      3. Salvaguarda del zoom y de la última fuente, tamaño y propiedades del texto, en la hoja "Personal".
      4. Símbolos de las teclas especiales según el standard internacional ISO/IEC 9995.
      5. Teclado numérico que funciona como una calculadora básica.
      6. Funciones de las teclas especiales: Retorno de carro (Intro), Tab, Ctrl, Alt Gr, Mayúsculas, Bloq Mayús, Bloq Num, tecla Windows, Menu, Insertar, Suprimir, Inicio, Fin, Re Pág, Av Pág y flechas de movimiento del cursor.
      7. Ocultar o mostrar el teclado numérico.
      8. Ampliar la caja de texto con doble click.
      9. Otras mejoras menores, como la posición del teclado en la pantalla.

      NOTA: La tecla Alt no genera los caracteres codificados, por ejemplo Alt+21 = § ¿me puedes ayudar a resolverlo?

      Descarga la plantilla desde este enlace:


      Como es un teclado virtual y se puede emplear con el ratón, sirve como teclado táctil en dispositivos sin teclado físico, como tablets, etc.

      Me gustaría que le sacaras faltas, fallos, bugs, defectos, incidencias, mejoras , etc., y poder mejorarlo cuando vuelva de vacaciones. ¡Hasta pronto!

      International virtual keyboard

      $
      0
      0

      Background

      In the early 80s I chose, as Thesis in Industrial Engineering, the design of a dumb terminal acoustically coupled to a central computer.

      I put together a working prototype with a microprocessor that controlled a QWERTY keyboard and showed the characters in a CRT television. It was my first contact with the ASCII character-encoding and those I still follow with this virtual keyboard with Unicode encoding to generate the characters in the "smart" terminal, if we show the logic to the  textbox of how to make them, but as so dumb as any TV box if we don't show that.



      International Virtual Keyboard

      Based on the idea of ​​Macro Antonio of a virtual keyboard, which verzulsan (with his machine gun to repeat keys) and I (with fonts and text zoom) modify some time ago in the forum AyudaExcel.com (link here), I allow myself to upload an improved version that includes:
      1. Keyboard translated into Spanish, Latin American, Inglés, Français, Italiano, Deutsch, Português, with ability to add more languages ​​in the sheet "Teclas".
      2. Some layouts: QWERTY, QWERTZ (German), AZERTY (French) and Dvorak simplified keyboard in Spanish and English.
      3. Safeguarding last zoom and font, size and text properties in the sheet "Personal".
      4. Symbols for special keys as the international standard ISO/IEC 9995.
      5. Numeric keypad functions as a basic calculator.
      6. Special Key Functions: Carriage Return (Enter), Tab, Ctrl, Alt Gr, Shift, Caps Lock, Num Lock, Windows Key, Menu, Insert, Delete, Home, End, Page Up, Page Down and movement arrows cursor.
      7. Hide or display the keypad.
      8. Enlarge text box with double click.
      9. Other minor improvements, such as the position of the keyboard on the screen.

      NOTE: The Alt key does not generate the encoded characters, eg Alt +21 = §
      Could you help me to solve it?

      Download template from this link:


      As it is a virtual keyboard you can use with the mouse, without touch the physical keyboard devices, such as tablets, etc.

      I would like you find faults, errors, bugs, defects, incidents, improvements, etc., in order to improve this virtual keyboard when I return from summer holidays. See you soon!

      Como generar un diagrama de ajedrez en Excel

      $
      0
      0

      Antecedentes

      En la web se pueden encontrar muchos generadores de diagramas de ajedrez, la mayoría colgados en la nube, con los que se puede generar una imagen gráfica del diagrama o un formato importable en un blog o página web, colocando las piezas en el tablero o editando la notación FEN inglesa.

      Lo que no he encontrado hasta ahora es un generador de diagramas de ajedrez con las siguientes características:
      1. Visualizar las piezas del ajedrez con los símbolos gráficos de los caracteres Unicode universales.
      2. Cambiar el tipo de piezas entre 4 fuentes de caracteres: Calibri, Times New Roman, Arial Unicode MS o Meiryo UI (en Windows 7 y 8).
      3. Editar la notación FEN española o inglesa, pudiendo añadir más idiomas con saber un poco de Excel.
      4. Escoger el color y los bordes del tablero.
      5. Rotar tanto el tablero como las piezas blancas y negras.
      6. Guardar los diagramas con varios formatos de imagen (GIF, PNG, JPG), en formato HTML o en formato XLS de Excel.
      7. Rotar y ampliar o disminuir los diagramas.
      8. Guardar y recuperar diagramas copiados.
      9. Diseñar el generador completamente en Excel.
      10. Poder estar desconectado de la Web o de la Nube para editar, copiar, guardar, recuperar y ver los diagramas.
      Por eso me he propuesto diseñar un generador de diagramas de ajedrez que incluya todas las características anteriores. Puedes ver su interfaz gráfico de usuario en la siguiente imagen:



      Descarga la plantilla totalmente gratuita, con las macros visibles y las hojas protegidas sin contraseña, de este generador de diagramas de ajedrez desde este enlace y habilita las macros para usarlo:



      Programación del generador de diagramas

      Este completo generador de diagramas de ajedrez está totalmente construido en Excel con fórmulas y macros, que se deben habilitar para que funcione, y con una única imagen para copiar los diagramas y un único objeto gráfico para guardarlos, en la hoja "Diagram".

      Personalización de los diagramas

      Se puede elegir el tipo de piezas de ajedrez entre cuatro fuentes distintas (ver hoja "Fonts"): Calibri, Times New Roman, Arial Unicode MS o Meiryo UI (en Windows 7 y 8).

      Se puede cambiar el color del tablero (ver hoja "Boards") y sus bordes, hasta tres paneles de símbolos (ver hoja "Symbols"), mostrar u ocultar las coordenadas y voltear o girar el tablero de ajedrez.

      Generación de los diagramas

      Las figuras de las piezas de ajedrez y los símbolos del diagrama se copian desde el panel de símbolos al tablero y se mueven a su posición en el diagrama, siendo totalmente editables en el tablero, pudiendo usar símbolos que no aparecen en el panel, como por ejemplo letras minúsculas.

      Primer panel de símbolos y piezas de ajedrez con fuente "Times New Roman":

      Notación FEN

      Se puede crear un diagrama editando la notación FEN de una posición nueva. En todo momento se puede ver la notación FEN de las piezas colocadas en el tablero.  En la hoja "FEN" se hacen los cálculos para mostrar la notación FEN y para colocar las piezas del ajedrez al editar una nueva posición FEN.

      Colocación inicial de las piezas de ajedrez:
      • En notación FEN inglesa: rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQK­BNR
      • En notación FEN española: tcadract/pppppppp/8/8/8/8/PPPPPPPP/TCADRACT

      Copia y recuperación de los diagramas

      Se puede crear una imagen copiando el tablero solamente (PIE - 8x8 casillas) o con las coordenadas y el siguiente movimiento de blancas o negras (IMG - 10x10 casillas) o con la descripción del diagrama (INF) o con la posición en formato FEN con la colocación de las piezas (FEN) o con las piezas negras giradas 180 grados (ROT - 10x10 casillas), ver hoja "Rotate". La imagen del diagrama se puede rotar a la derecha o izquierda y ampliar o disminuir su zoom.

      Cada vez que se copia el diagrama de ajedrez, se guardan las piezas, los símbolos y su posición en el tablero, la cara blanca (☺) o la cara negra (☻) con el siguiente movimiento y la descripción del diagrama en la hoja "History".  En cualquier momento se puede recuperar y ver uno de los diagramas copiados.

      Exportar diagramas de ajedrez

      Los diagramas de ajedrez se pueden guardar en varios formatos de imagen (GIF, PNG, JPG), en formato HTML web (HTM) y en hojas Excel (XLS). Cualquier parte del diagrama se puede copiar a un documento Word por ejemplo, al estar formado por celdas en Excel con caracteres Unicode universales.

      Este generador de diagramas de ajedrez se publica en inglés y en español (ver hoja "Languages") y es fácil incluir más idiomas.



      Descarga

      Descarga la plantilla totalmente gratuita, con las macros visibles y las hojas protegidas sin contraseña, de este generador de diagramas de ajedrez desde este enlace y habilita las macros para usarlo:



      Si te ha servido para algo, agradeceré que me lo digas en un comentario y si no es lo que buscas, sería interesante que me digas por qué.

      How to generate a chess diagram in Excel

      $
      0
      0

      Background

      On the web you can find many chess diagrams generators, the majority hanging on the cloud, with which you can generate a graphical image of diagram or an importable format on a blog or web page, placing the pieces on the board or by editing the English FEN notation.

      What I have not found so far is a chess diagram generator with the following characteristics:
      1. Display chess pieces with graphic symbols made of universal Unicode characters.
      2. Change the type of pieces from 4 character fonts: Calibri, Times New Roman, Arial Unicode MS or Meiryo UI (Windows 7 and 8).
      3. Edit the Spanish FEN notation or English, and the ability to add more languages with the knowledge of a little bit of Excel formulas and macros.
      4. Choose the chessboard color and borders.
      5. Rotate both the chessboard and the black and white pieces.
      6. Save diagrams in several image formats (GIF, PNG, JPG), in HTML or Excel XLS format.
      7. Rotate and scale up or down the diagram graphic chart.
      8. Save and retrieve diagrams copied.
      9. Designing the generator fully in Excel.
      10. Being able to be disconnected from the Web or the cloud to edit, copy, store, retrieve and view diagrams.
      So I plan to design a chess diagram generator that includes all the above features. You can see its graphical user interface in the image below:




      Download the template for free, with visible macros and protected sheets without password, of this chess diagram generator from this link and don't forget to enable macros to use it:

      ChessDiagram_PW10.zip 


      Programming the diagram generator

      This complete chess diagram generator is fully built in Excel with formulas and macros, that must be enabled to run, with a single image to copy and a single graphic object to save the diagram, in the "Diagram" sheet.

      Customizing the diagrams

      You can choose the type of chess pieces from four different fonts (see sheet "Fonts"): Calibri, Times New Roman, Arial Unicode MS or Meiryo UI (Windows 7 and 8).

      You can change the color of the chessboard (see sheet "Boards") and their borders, up to three panels symbols (see sheet "Symbols"), show or hide the coordinates and flip or rotate the chessboard.

      Generating diagrams

      Figurines of chess pieces and symbols of the diagram are copied from the the symbols panel to the chessboard and moved to their position in the diagram, being fully editable on the chessboard and also you can use symbols that aren't on the symbols panel, for lowercase letters, by example.

      First panel of symbols and chess pieces with the "Times New Roman" font:

      FEN notation

      You can create a diagram editing the FEN notation of a new position. At all times you can see the FEN notation of the pieces placement on the chessboard, from white's perspective. In the sheet "FEN" calculations are made to show FEN notation and to place the chess pieces when editing a new FEN pieces placement.

      Initial placement of chess pieces:
      • English FEN: rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQK­BNR
      • Spanish FEN: tcadract/pppppppp/8/8/8/8/PPPPPPPP/TCADRACT

      Copying and restoring diagrams

      You can create an image by copying the chessboard only (PIE - 8x8 squares) or by the coordinates and the next move either black or white (IMG - 10x10 squares) or by the diagram description (INF) or by FEN format position with the placement of the pieces (FEN) or with the black pieces rotated 180 degrees (ROT - 10x10 squares), see sheet "Rotate". The graphic chart can be rotated to the right or left and expand or decrease the zoom.

      Each time you copy the chess diagram, are stored pieces, symbols and their position on the chessboard, white face (☺) or black face (☻) with the following movement, and the diagram description in the sheet "History".  At any time you can restore and view one of the diagrams copied.

      Exporting chess diagrams

      Chess diagrams can be saved in several image formats (GIF, PNG, JPG), in the web HTML format (HTM) and in Excel sheets (XLS). Any part of the diagram can be copied to a Word document for example, as it is built by Excel cells with universal Unicode characters.

      This chess diagrams generator is published in English and Spanish (see sheet "Languages") and it is easy to include more languages.



      Downloading the Chess Diagram Generator

      Download the template for free, with visible macros and protected sheets without password, of this chess diagram generator from this link and don't forget to enable macros to use it:


      ChessDiagram_PW10.zip 


      If it has helped you for something, I appreciate you tell me in a comment and, if it not help you, would be interesting tell me why.


      Como pintar con Excel

      $
      0
      0

      Obras de arte virtuales

      No hace falta usar programas especializados para crear arte digital, con programas como Paint o Excel se puede ser un artista, como veremos en este artículo.

      La primera vez que se uso un ordenador para pintar fue antes de 1959 en un centro militar con un ordenador que costó 238 millones de dólares al presupuesto de la Guerra Fría, dentro del proyecto SAGE: Semi-Automatic Ground Environment, creado por el MIT e IBM.

      Un artista militar anónimo (no es de extrañar) logró pintar en un display gráfico de 19", programándolo con tarjetas perforadas, un dibujo vectorial de una chica pin-up ligerica de ropa, copiada de un calendario de 1956.  La historia completa puedes leerla aquí.

      The Never-Before-Told Story of the World's First Computer Art (It's a Sexy Pin-Up)




      En esta imagen generada con mi programa para pintar en Excel, que puedes descargar más abajo, la imagen original está en blanco y negro, como puedes suponer, y la de carne y hueso era la del calendario del que se copió.

      Hoy en día cualquiera que disponga de programas vectoriales puede crear arte en un ordenador o en la nube o incluso crear objetos y personajes artísticos en escenarios creados en 3D dentro del mundo virtual Second Life, por ejemplo.

      Lo que ya es más difícil es encontrar artistas que usen programas como Paint o Excel para realizar sus obras de arte, pero haberlos, haylos.  Por ejemplo los que se pueden ver en esta página.  Creando obras de arte con Excel y Paint

      Un jubilado japonés ha realizado unos dibujos artísticos con el uso de las autoformas incluidas en Excel que se pueden descargar en estos enlaces:
      http://www.moug.net/img/campaign/2006/a1.zip
      http://www.moug.net/img/campaign/2006/a2.zip

      (Se pueden bajar 8 cuadros artísticos totalmente pintados en Excel, con sólo cambiar el nombre del fichero a descargar: a1.zip a a8.zip)

      Como pintar con Excel

      La ídea inicial es usar cada celda de Excel como un pixel de la imagen y cambiar su color para crear un dibujo.  El problema es que hay que desplazarse y seleccionar cada una de las celdas a las que se quiera cambiar su color de relleno como explican los de Microsoft para Resaltar celdas aquí.

      Otra forma es dar valores a las celdas que representen un color y crear reglas de formato condicional para cambiar su color dependiendo de sus valores, lo que es muy laborioso y no deja mucha libertad artística.

      La solución llegó cuando leí este interesante y excelente artículo en el blog Option Explicit VBA:
      How to Create a Rollover Effect in Excel: Execute a Macro When Your Mouse is over a Cell


      Efecto cursor Rollover o Mouseover

      Cuando el ratón se desplaza por encima de las celdas no se produce ningún efecto, hay que seleccionar una celda para poder cambiar sus propiedades.

      Esto ha cambiado desde que Jordan Goldmeier publicó el 9 de abril de 2011 un artículo en su blog original que permitía cambiar propiedades de celdas pasando el cursor por encima de ellas.

      OPTION EXPLICIT VBA Blog - Efecto Rollover

      El tuvo la idea participando en el blog de nuestro admirado Chandoo, gurú de Excel, que publicó dos artículos con los que se puede aprender esta técnica:
      Chandoo.org - Beam Me Up Scotty – Excel Hyperlinks
      Chandoo.org - Interactive Dashboard in Excel using Hyperlinks

      Programa para pintar en Excel

      Basado en el efecto Rollover o Mouseover he diseñado y desarrollado un Pintor en Excel, como un bloc de dibujo digital inspirado en el programa Paint de Windows pero un poco más limitado, para crear imágenes pixeladas en un mapa de bits, conocido como formato bitmap, rasterizado o calcado, en el que se almacena el color de cada celda en Excel, siendo un bit o pixel representado por una celda en una determinada fila y columna de la hoja de cálculo.

      Este programa contiene dos hojas, Pintor para dibujar e Idiomas con las traducciones de los textos al inglés y al español, como es habitual en las plantillas de este blog.

      El zoom de la hoja Pintor está preseleccionado al 200% para que sea más fácil editar las imágenes, siendo necesario bajarlo al 50% para obtener el tamaño correcto de los pixeles en los bitmaps generados con este programa.

      En la zona de la imagen, nombrada Lienzo, el ancho de las columnas es de 0,17 y el alto de las filas es de 2, con lo que las celdas son cuadradas de 0,05 cms. de lado.

      Se han definido varias secciones para manejar este programa de dibujo y pintura:
      • Zoom - Para modificar el zoom de la imagen con 3 botones: Acercar, Alejar y el zoom por defecto del 200%.  En todo momento se muestra el valor del zoom y se puede editar el nombre de la imagen que será el nombre del fichero cuando se guarde la imagen.
      • Mostrar u ocultar - Se pueden mostrar u ocultar las reglas vertical y horizontal, las fórmulas de las celdas, la cuadrícula de la imagen, los títulos de las filas y columnas de la hoja, la barra de estado y las barras de desplazamiento horizontal y vertical y las hojas del libro.
      • Pantalla - Para conmutar a pantalla completa.
      • Portapapeles - Permite copiar y pegar rangos seleccionados de la imagen y guardar la imagen o la selección en un fichero en 4 formatos de imagen: BMP, GIF, JPG o PNG.
      • Imagen - Para seleccionar o borrar todo.  En un recuadro se muestran las coordenadas de la celda por la que pasa el cursor por encima y, si se selecciona ese recuadro (apareciendo "Rellenar con color sólido"), hará que la forma Pincel sea continua y la forma Bloques rellene los rectángulos de color.
      • Formas - Para elegir la forma con la que dibujar entre tres posibles. Pincel que dibuja una línea a mano alzada (continua o discontinua); Líneas que dibuja líneas continuas de un punto a otro; Bloques que dibuja rectángulos, rellenos o no dependiendo de que se esté marcando como "Rellenar con color sólido".
      • Colores - Para cambiar el color de los pinceles intercambiando dos colores: Color 1, activado con el botón izquierdo del ratón; Color 2, activado con el botón derecho del ratón.  Una vez seleccionado uno de los dos colores, se puede cambiar su color con el mosaico del tipo arco iris de su derecha o con el botón para "Editar colores" que abre la ventana para elegir el color de fondo de relleno del formato de celdas.  No se pueden elegir efectos de relleno ni estilos ni colores de trama.
      • Botón para cambiar de idioma - Está pintado en fondo amarillo y se puede cambiar entre el inglés y el español los textos de este pintor.

      Función Rollover o Mouseover

      Cuando se mueve el cursor por el lienzo de la imagen y aparece en la sección Imagen el texto dinámico:

      Fila=136 / Columna=111

      con la fila y la columna por la que pasa por encima el ratón, es cuando se produce el denominado efecto Rollover o Mouseover, porque se está ejecutando la función que lo provoca debido a que la celda por la que se pasa contiene una llamada dentro de una función HIPERVINCULO a la función MouseOver:



      En esta función se controla que solo se llame una vez por cada paso por encima de una celda y que se ha seleccionado la forma Pincel para dibujar a mano alzada.  Si el trazo es continuo se llama a la rutina PintarRayas, que rellena las celdas para las que no se ha activado el efecto mouseover, y si el trazo es discontinuo se cambia el color de una única celda con la rutina PintarCelda.

      Cuando no está activado el relleno de las celdas siempre se informa del punto o celda por la que está pasando el ratón por encima.

      Descarga del Pintor

      Descarga la plantilla totalmente gratuita, con las macros visibles y las hojas protegidas sin contraseña, de este Pintor de Imágenes desde este enlace y habilita las macros para usarlo:



      Descarga el fichero comprimido y ejecuta el fichero Pintor_PW10.xlsm para ver en movimiento el efecto Mouseover y la paleta completa de colores. El fichero Pintor_PW10.xls ejecutado en modo de compatibilidad en Excel 2007 y 2010 permite ver ese efecto pero no guarda la paleta completa de colores. Está probado en las versiones de Excel 2007 y 2010, por lo que no puedo asegurar que funcione en Excel 2003 ni en Excel 2013.

      How to Paint in Excel

      $
      0
      0

      Virtual artworks

      No need to use specialized software to create Digital art, with programs like Paint or Excel you can be an artist, as discussed in this article.

      The first time a computer was used to paint was before 1959 in a military center with a computer that cost $238 million to the Cold War budget, within the SAGE: Semi-Automatic Ground Environment project created by MIT and IBM.

      An anonymous military artist (no surprise) managed to paint in a 19" graphic display, programming it with punch cards, a vector drawing of a silver screen pinup scantily dressed, copied from a 1956 calendar. You can read the complete story here.

      The Never-Before-Told Story of the World's First Computer Art (It's a Sexy Pin-Up)




      In this image generated with my paint program in Excel, which can be downloaded below, the original image is in black and white, as you might expect, and the flesh and bone one was from the calendar that was copied.

      Today anyone with vector programs can create art on a computer or in the cloud or even create art objects and characters in 3D environments within a virtual world as Second Life, for example.

      What is more difficult is to find artists who use programs like Paint or Excel to create his artworks, but there are people painting on them. For example those which can be seen on this page.  Digital Art Made with Excel Spreadsheets

      A retired Japanese artist has made some drawings using AutoShapes included in Excel that can be downloaded from these links:
      http://www.moug.net/img/campaign/2006/a1.zip
      http://www.moug.net/img/campaign/2006/a2.zip
      (8 art prints can be downloaded fully painted in Excel, just by changing the file name to download: a1.zip to a8.zip)

      How to paint with Excel

      The initial idea is to use each cell in Excel as a pixel of the image and change its color to create a drawing. The problem is you have to scroll through and select each of the cells you want to change its fill color as explained by Microsoft to highlight cells.

      Another way is to give values ​​to cells that represent a color and create rules of conditional formatting to change their color depending on their values​​, which is laborious and does not leave a lot of artistic freedom.

      The solution came to me when I read this interesting and excellent blog: Option Explicit VBA
      How to Create a Rollover Effect in Excel: Execute a Macro When Your Mouse is over a Cell


      Cursor Rollover o Mouseover effect

      When the mouse moves over the cells can not produce any effect, you must select a cell to change its properties.

      This has totally changed since Jordan Goldmeier published on April 9th, in 2011, an article in his original blog allowing to change cell properties moving the mouse cursor over them.

      OPTION EXPLICIT VBA Blog - Rollover Effect

      He had the idea participating in the blog of our beloved Chandoo, Excel guru, who published two articles with which you can learn this awesome technique effect:
      Chandoo.org - Beam Me Up Scotty – Excel Hyperlinks
      Chandoo.org - Interactive Dashboard in Excel using Hyperlinks

      Program to paint in Excel

      Based on Rollover or Mouseover effect I designed and developed a Painter in Excel as a digital drawing block inspired by the program Paint from Windows but slightly more limited, to create pixelated images in bitmap format known as bitmap, raster graphic images or contones (continuous tones), in which is stored the color of each cell in Excel, as a bit or pixel being represented by a cell in a particular row and column of the worksheet.

      This program contains two sheets, Pintor (Painter) to draw and Idiomas​​ (Languages) with the translations of the texts into English and Spanish, as usual in my blog templates.

      The Painter sheet zoom is preset to 200% to make it easier to edit images, requiring lower it to 50% to get the correct size of the pixels in the bitmaps generated with this program.

      In the image area named Lienzo (Painting) the column width is 0.17 and the row height is 2, so that the cells are squares with sides of 0.05 cms.

      Several sections have been defined to handle this drawing and painting program:
      • Zoom - To change the zoom of the image with 3 buttons: Zoom in, Zoom out and 200% default zoom. At all times is shown the zoom and you can edit the name of the image that will be the file name when saving the image.
      • Show or hide - You can show or hide the horizontal and vertical rulers, the cell formulas, image grid, the titles of the rows and columns of the sheet, the status bar and horizontal scroll bar and vertical and the worksheets.
      • Screen- To switch to full screen.
      • Clipboard - Allows you to copy and paste selected ranges of the image and save the image or selection to a file in four popular image formats: BMP, GIF, JPG or PNG.
      • Image - To select or clear all. A box shows the coordinates of the cell that mouse hover is above and, if you select this box (appearing "Fill color with solid"), will be fill continuous brush and block rectangles.
      • Forms - To choose the way in which three possible drawing. Brush drawing a freehand line (continuous or discontinuous) that draws solid lines from one point to another; Blocks draws rectangles, filled or not depending on being marked as "Fill color with solid".
      • Colors - To change the color of the brushes exchanging two colors: Color 1, activated with the left mouse button, Color 2, activated with the right mouse button. After selecting one of the two colors, you can change its color with the rainbow-like mosaic of the right or the button to "Edit Colors" that opens the window to choose the background color fill format cells. You can not choose fill effects and frame styles and colors.
      • Button to change language - It is painted in yellow and you can switch between English and Spanish texts of this painter.

      Rollover or Mouseover function

      When you move the cursor over the painter, in the Imagen section appears this dynamic text:

      Row=136 / Column=111

      with row and column that the mouse cursor rollover, is when the called Rollover or Mouseover effect, because the function that causes it is running because the cell that contains a call is passed within a HYPERLINK function to the MouseOver function:



      This function controls that it is called once only for each cell rolloved and if Pincel (Brush) is selected to draw freehand. If the line is continuous the function calls the PintarRayas subroutine, which fills the cells for which no effect is activated mouseover, and if the line is discontinuous changes the color of a single cell with the PintarCelda subroutine.

      When not enabled cell filling, always reported point or cell that is passing the mouse over it.

      Painter Download

      Download the template for free, with macros visibles and worksheets not password protected, this images painter from this link and enable macros to use it:



      Download the zip file and run the Pintor_PW10.xlsm file to see the Mouseover effect moving and the full colors palette painting. With the Pintor_PW10.xls file, executed in compatibility mode in Excel 2007 and 2010, you can see this effect but does not save the full colors palette. It is tested on Excel 2007 and 2010 versions, so I can not ensure it works in Excel 2003 or Excel 2013.

      Puestos corrientes

      $
      0
      0

      Historia de la corriente eléctrica

      La corriente eléctrica no tiene nada de corriente ya que la humanidad la intenta controlar desde hace poco más de 200 años.

      Con la generación, transporte y transformación de la energía eléctrica se ha producido una gran revolución de la industria, el transporte, las comunicaciones y el conocimiento, y se han creado muchos puestos de trabajo de empleados eléctricos, tanto ingenieros como investigadores, técnicos o comerciales, además de crear puestos de asesores, consultores, directivos o políticos, todos ellos retribuidos cuando los consumidores de la corriente eléctrica pagan sus facturas eléctricas.

      Factura eléctrica

      Este traspaso de la corriente eléctrica deshincha las cuentas corrientes de los consumidores de la luz e hincha las cuentas no tan corrientes de algunos puestos, puestos por enchufe no tan eléctrico, que son los que marcan las subidas del precio de la luz. No vamos a comentar las propuestas de los ¿reguladores? del mercado eléctrico ni las decisiones de los viernes del Consejo de Ministros, que se pueden ver en las noticias o en el siguiente enlace:
      http://estaticos.expansion.com/opinion/documentosWeb/2013/12/26/Propuesta_26122013_.pdf

      Lo que si podemos hacer es investigar los puestos, puestos a dedo con enchufe, sin dar calambres aún metiendo todos los dedos y las dos manos en el enchufe, pero que hacen subir en rampa (sin que les dan rampazos) sus cuentas corrientes y no tan corrientes y la factura eléctrica con la que se pagan sus sueldos y emolumentos.



      Plantilla de Puestos Corrientes

      La siguiente plantilla sirve tanto para los puestos corrientes de los empleados privados como para los excelentes puestos públicos y no tan públicos ni transparentes.  Enlace para descargar la plantilla de Puestos Corrientes aquí:

      Puestos Corrientes PW2.xlsx 


      Esta plantilla de Puestos Corrientes ayudará a:
      • Los directores o empleados de RRHH de las empresas privadas.
      • Los controladores de los empleados y/o funcionarios públicos.
      • Los profesores para situar a sus alumnos en el aula.
      • Los jefes de proyecto para localizar y posicionar a sus grupos de colaboradores.
      • Los organizadores de banquetes de bodas, eventos y reuniones.
      • Los capitanes de barcos y submarinos para asignar los camarotes de los mandos y de la tropa.
      • Los padres de familias numerosas para ordenar los dormitorios de sus hijos.
      • Los monitores de escuelas de tiempo libre y no tan libre.
      • Los gestores de plantillas de personal y RPT - relación de puestos de trabajo.
      • La confección y actualización de los organigramas de la organización.
      • La implantación de un sistema de gestión de la calidad de la gestión de recursos humanos.
      • La ocupación de los escaños parlamentarios.

      Los datos de ejemplo de la plantilla son meramente especulativos y no guardan relación alguna con la realidad, que siempre supera a la ficción e imaginación. Debido a la poca transparencia de las administraciones y sociedades públicas y/o eléctricas españolas no se puede asegurar que los datos empleados como ejemplo de empleados sean ciertos y verdaderos y se deben borrar antes de usar esta plantilla de Puestos Corrientes.

      Para encontrar el puesto ocupado o desocupado se debe incluir el nombre completo de un empleado o desempleado seleccionándolo en el desplegable de una mesa de la hoja "Puestos". El hiperenlace a cada puesto se encuentra en la columna B con los puestos de la hoja de "Empleados" y en la celda J8 de la hoja de "Perfil".  Siguiendo el enlace lleva a la mesa ocupada por el empleado, calculada simplemente con funciones de Excel, sin macros ni VBA.

      En el Administrador de Nombres se ha definido Puestos =Puestos!$A$1:$Z$50
      Con 12 filas de mesas y 3 bancadas de 12 puestos en cada fila, hacen un total de 432 puestos a ocupar, que se pueden reducir o aumentar según sea el tamaño de la oficina o del banquete. Si algún empleado tiene la columna B vacía en la hoja "Empleados" es que no se encuentra colocado en la hoja "Puestos".

      Descripción de la plantilla

      Hoja "Empleados"

      • Empleado: Nombre y apellidos de los empleados.
      • Puesto: Compuesto con una fórmula matricial y un enlace dinámico a la hoja "Puestos".
        • {=SI.ERROR(HIPERVINCULO("[Puestos Corrientes PW1.xlsx]Puestos!"& DIRECCION(MAX((Puestos=[@Empleados])*FILA(Puestos));MAX((Puestos=[@Empleados])*COLUMNA(Puestos)));[@Empleados]);"")}
        • Administrador de Nombres: Puestos=Puestos!$A$1:$Z$50
      • Puesto anterior.
      • Cargo.
      • Empresa.
      • Entrada: Fecha de incorporación al puesto.
      • Salida: fecha de salida del puesto.
      • Meses en el cargo: 
        • =SI(ESNUMERO([@Entrada]);SIFECHA([@Entrada];SI(ESNUMERO([@Salida]);[Salida];HOY());"m");"")
      • Años de antigüedad:
        • =SI(ESNUMERO([@[Meses cargo]]);[@[Meses cargo]]/12;"")
      • Bruto anual: Sueldo bruto anual sin comisiones ni complementos ni sobres.
      • Ingresado: Importe total ingresado en la cuenta corriente en el tiempo que lleva en el cargo.
      • Partido: Si está partido o si está entero o si es bipartidista.
      • Nacimiento: Fecha de nacimiento declarada o estimada.
      • Edad: Edad calculada.
        • =SI(ESNUMERO([@Nacimiento]);SIFECHA([@Nacimiento];HOY();"y");"")
      • Correo: Desconocido.
      • Teléfono: Desconocido.
      • Móvil: Desconocido.
      • Dirección: Desconocida.
      • BORME (Boletín Oficial del Registro Mercantil): Enlace a datos públicos.
      • Ultima fila con los valores promedio de:
        • Meses en el cargo.
        • Años de antigüedad.
        • Sueldo bruto anual.
        • Total ingresado en la cuenta corriente.
        • Edad.

      Hoja "Puestos"

      • Con la mesa de cada puesto.
      • Sin despachos (se pueden dibujar posteriormente)
      • Lista dinámica en la validación de datos de la hoja "Puestos".
        • ListaEmpleados=DESREF(Empleados!$A$2; 0; 0; CONTARA(Empleados!$A:$A) - 1)
      • Regla de formato condicional aplicada al rango: $A$1:$Z$50
        • =Y(CELDA("fila")=FILA();CELDA("columna")=COLUMNA())
        • Detección de los puestos duplicados, marcados en rojo con: =CONTAR.SI(Puestos;A1)>1

        Hoja "Perfil"

        • Perfil con el resumen de cada puesto.
        • Celda G5 con la lista desplegable de los puestos para seleccionar el perfil.
        • Detección del nombre del archivo por si se cambia con los nombres:
          • NombreArchivo=CELDA("nombrearchivo")
          • HojaPuestos=EXTRAE(NombreArchivo;ENCONTRAR("[";NombreArchivo);ENCONTRAR("]";NombreArchivo)-ENCONTRAR("[";NombreArchivo)+1)&"Puestos!"
        • La fórmula con el hipervínculo que lleva al puesto ocupado en la hoja "Puestos" desde la celda J8 de la hoja "Perfil" y que es el "alma mater" de este aporte (es una fórmula matricial por lo que se debe introducir presionando a la vez las teclas Ctrl + Shift + Enter)
          • =SI.ERROR(HIPERVINCULO(HojaPuestos & DIRECCION(MAX((Puestos=$G$5)*FILA(Puestos));MAX((Puestos=$G$5)*COLUMNA(Puestos)));$G$5);"")

        Hoja "Sueldos"

        • Hoja dinámica con los puestos ocupados por empleados distribuidos en cada empresa.
        • Sueldo anual bruto.
        • Meses en el cargo.
        • Años de antigüedad.
        • Años de experiencia.

        Hoja "Referencias"

        • Páginas Web con la información de Excel y los datos empleados para confeccionar esta plantilla de Puestos Corrientes.

        Todas las hojas se pueden desproteger sin contraseña y aunque los datos se han extraído de referencias públicas, no puedo asegurar que sean confidenciales y estén protegidos si no recibo aviso en contra.

        Felices fiestas consumistas de energía eléctrica y que podamos seguir pagando la subida de la luz el próximo año nuevo, os desea
        Pedro Wave

        Current positions

        $
        0
        0

        Current positions

        Please find below all of our current vacancies. If there are no vacancies that fit you at the moment but you would like to be considered for future openings we invite you to apply and we will be happy to let you know when a suitable position becomes available.



        Current Positions Template

        The following template serves both for current positions for private employees and for excellent public and not so transparent public positions. Link to download this Current Positions template here:



        This Current Positions template help to:
        • The HR directors or employees of private companies.
        • The controllers of the public servants.
        • Teachers to place students in the classroom.
        • Project managers to locate and position their groups of collaborators.
        • Organizers of wedding, receptions, meetings and events.
        • Captains of ships and submarines to assign cabins to commanders and troop.
        • Parents of large families to order their children's bedrooms.
        • Monitors of free time schools and not so free.
        • Managers and staff templates of related jobs.
        • The preparation and updating of organization charts.
        • Implementing a system of quality management of human resources management.
        • Occupation of parliamentary seats.
        The sample data template are purely speculative and have no connection with reality, which is always stranger than fiction and imagination. Due to the lack of transparency in public administrations and Spanish electric companies, I can not ensure that the data used as an example of employees are true and real and must to be cleared before using this Current Positions template.

        To find the position occupied or unoccupied must include the full name of an employee or unemployed selecting it from the dropdown in the cells of the "Puestos" worksheet. The hyperlink to each position is in column B with the positions of the "Empleados" sheet and in cell J8 of the sheet "Perfil". Following the link leads to the position occupied by the employee simply calculated using Excel functions, not macros or VBA.

        In the Manager Names has been defined: Puestos =Puestos!$A$1:$Z$50With 12 rows of tables and 3 benches of 12 seats in each row, for a total of 432 positions to fill, which can be reduced or increased depending on the size of the office or banquet. If any employee has the empty column B in the worksheet "Empleados" is that it is not placed on the sheet "Puestos".

        Template description

        Sheet "Empleados"

        • Empleado: Name of employees.
        • Puesto: Position composed with an array formula and a dynamic link to the sheet "Puestos".
          • {=SI.ERROR(HIPERVINCULO("[Puestos Corrientes PW1.xlsx]Puestos!"& DIRECCION(MAX((Puestos=[@Empleados])*FILA(Puestos));MAX((Puestos=[@Empleados])*COLUMNA(Puestos)));[@Empleados]);"")}
          • Administrador de Nombres: Puestos=Puestos!$A$1:$Z$50

          Sheet "Puestos"

          • Position of each table.
          • Dynamic list with data validation form the "Puestos" sheet.
            • ListaEmpleados=DESREF(Empleados!$A$2; 0; 0; CONTARA(Empleados!$A:$A) - 1)
          • Conditional formatting rule appliedf to the range: $A$1:$Z$50
            • =Y(CELDA("fila")=FILA();CELDA("columna")=COLUMNA())
            • Detection of dupplicated positions, marked in red: =CONTAR.SI(Puestos;A1)>1

            Sheet "Perfil"

            • Profile with resume position.
            • Cell G5 with the position to select the profile.
            • Archive name detection:
              • NombreArchivo=CELDA("nombrearchivo")
              • HojaPuestos=EXTRAE(NombreArchivo;ENCONTRAR("[";NombreArchivo);ENCONTRAR("]";NombreArchivo)-ENCONTRAR("[";NombreArchivo)+1)&"Puestos!"
            • The hyperlink formula leading to the occupied position in the sheet "Puestos" from cell J8 of sheet "Perfil" and is the "alma mater" of this contribution (that is an array formula so must be entered simultaneously pressing Ctrl + Shift + Enter keys)
              • =SI.ERROR(HIPERVINCULO(HojaPuestos & DIRECCION(MAX((Puestos=$G$5)*FILA(Puestos));MAX((Puestos=$G$5)*COLUMNA(Puestos)));$G$5);"")

            Sheet "Sueldos"

            • Dynamic table with the occupied positions by employees from each company.
            • Gross annual salary.
            • Months in office.
            • Years old.
            • Years of experience.

            Sheet "Referencias"

            • Web pages with information from Excel and the data used to make this Current Positions template.
            All sheets can be checked without password and although the data are taken from public reference, can not ensure that they are confidential and are protected if no receipt notice against.

            Happy Holidays and New Year 2014 from
            Pedro Wave

            Ventana en fecha y hora

            $
            0
            0

            Ventana en fecha y hora

            Cuando se está construyendo una aplicación cliente-servidor, uno de los retos es el desarrollo de las ventanas de la aplicación cliente en fecha y hora, para que los testers dispongan de prototipos rápidos que les permitan asegurar que las ventadas de entradas-salidas cumplen con los requisitos del diseño funcional y del diseño técnico.

            Los objetivos deben ser específicos, medibles, ambiciosos pero alcanzables y con un plazo de realización del objetivo adecuado y conocido por todos.

            Cualquier objetivo planteado fija la fecha y hora de su cumplimiento y, como no todos los objetivos son iguales ni tienen establecida la misma fecha ni la misma hora, hace falta disponer de un calendario de fechas y horas donde estén marcados los objetivos a cumplir.  También es importante anotar las desviaciones de los objetivos y sus incumplimientos para aprender de la historia pasada, para mejorar el presente y preparar el futuro.

            Calendario de fechas y horas


            Para seguir y perseguir los objetivos definidos en los proyectos, los gestores de proyecto usan aplicaciones de software complejas y sofisticadas, como los Sistemas de Información para la Gestión de Proyectos (PMIS - Project Management Information System) y aplicaciones informáticas como MS-Project, pero también usan hojas de cálculo, como MS-Excel, o incluso calendarios en papel.

            Aquí presento un calendario de fechas y horas escrito en Excel, que permite guardar y recuperar cualquier objetivo que queramos planificar en nuestros proyectos o los mismos objetivos de nuestra propia vida y de las generaciones futuras, pues recorre un rango desde el 1 de enero de 1.900 hasta el 31 de diciembre de 9.999, lo que permite planificar objetivos para más de 8.000 años, ¿es suficiente? porque Excel no da para más...

            Especificaciones del calendario

            En la primera ventana se puede ver el día y la hora actuales, en la segunda ventana se muestra el mes seleccionado y un reloj, y en la tercera ventana se ven las 24 horas del día seleccionado y las notas con los objetivos del día, que pueden ser recordatorios, aniversarios, planes de viajes o vacaciones, exámenes, o fechas de resolución o finalización marcadas en los proyectos en los que estemos involucrados.




            Las especificaciones principales de este calendario de fecha y hora son:
            1. Calendario programado en Excel sin macros, excepto para la latencia de los segundos del reloj.
            2. Estilo y formato de la aplicación similar a Windows 7 pero con un calendario ampliado, ya que Windows lo limita al año 2099.
            3. Reloj de esfera con las manecillas de horas, minutos y segundos.
            4. Mes y día actuales.
            5. Selección de un año y un mes cualquiera.
            6. Barra de desplazamiento en el rango del mes 1 (enero de 1900) hasta el mes 97.200 (diciembre de 9999).
            7. Barra de desplazamiento en el rango del mes 1.201 (enero de 2000) hasta el mes 1.452 (diciembre de 2020).
            8. Barra de desplazamiento en el rango del mes 1.369 (enero de 2014) hasta el mes 1.380 (diciembre de 2014).
            9. Sincroniza el reloj con los servidores de Internet, por ejemplo: http://horaexacta.com.es
            10. Agenda de 24 horas desde el año 1900 hasta el año 2099, que no está incluida en el calendario de Windows.

            Descarga del calendario de fecha y hora

            Enlace para descargar la plantilla del Calendario de fecha y hora aquí:



            En el fichero comprimido hay dos ficheros Excel:

            • Fecha y Hora PW41.xlsx sin macros y con 3 hojas visibles y una oculta:
              • Fecha y Hora: con el calendario de los meses y el reloj.
              • Reloj: para el cálculo de las manecillas de horas, minutos y segundos.
              • Agenda: con 73.050 filas, una por cada uno de los días de los años 1900 al 2099 y con 24 columnas con las notas de cada hora de cada día.
              • Hora: hoja oculta para sincronizar con un reloj de Internet.
            • Tempo-PW1.xls con una macro para actualizar el reloj cada segundo.

            Para que las manecillas del reloj se muevan basta con actualizar la Excel o ejecutar la macro pulsando en el reloj.

            Este calendario está probado en Excel 2010, solamente para no olvidar el día de mi cumpleaños que está cerca, y espero que sea de utilidad, de lo que me enteraré si recibo muchos comentarios.

            Viewing all 258 articles
            Browse latest View live