{"id":3198,"date":"2012-10-01T15:52:40","date_gmt":"2012-10-01T15:52:40","guid":{"rendered":"http:\/\/irisfernandez.com.ar\/betaweblog\/?p=3198"},"modified":"2012-10-01T15:52:40","modified_gmt":"2012-10-01T15:52:40","slug":"bingo-un-generador-de-numeros-hecho-en-openoffice-calc","status":"publish","type":"post","link":"https:\/\/irisfernandez.com.ar\/betaweblog\/index.php\/2012\/10\/01\/bingo-un-generador-de-numeros-hecho-en-openoffice-calc\/","title":{"rendered":"\u00a1Bingo! Un generador de n\u00fameros hecho en OpenOffice Calc"},"content":{"rendered":"<p>Un colega pregunt\u00f3 en la lista de gleducar por un programa libre (con licencia libre, no simplemente gratuito), para generar los n\u00fameros del bingo.<\/p>\n<p>Yo pens\u00e9 en crear los n\u00fameros al azar con la funci\u00f3n aleatorio() en calc, pero ten\u00eda el problema de c\u00f3mo saber si los n\u00fameros ya salieron anteriormente. Como no encontr\u00e9 manera de agregar excepciones, algo que dijera &#8220;generar n\u00fameros al azar excepto los de esta lista&#8221;, no pude generar la aplicaci\u00f3n mediante simples funciones (exceptuando la &#8220;trampita&#8221; de poner muchos if anidados, pero tiene un gran margen de error&#8230; salvo que se creen tantos if anidados como celdas preceden a la que estamos escribiendo, terminando con una celda que tenga 99 condicionales&#8230;).<\/p>\n<p>Entonces busqu\u00e9 en Google una macro para OpenOffice Calc, donde se utilice la estructura while (mientras&#8230;), como para que el sistema realice esta estructura:<\/p>\n<blockquote><p>&#8220;mientras el n\u00famero que salga en el sorteo no sea diferente a todos los anteriores, continuar sorteando n\u00fameros&#8221;.<\/p><\/blockquote>\n<p>Encontr\u00e9 <a href=\"http:\/\/www.openofficetips.com\/category\/openoffice-basic\/\">este post que, casualmente, est\u00e1 realizado para un lotto (o bingo, no?)<\/a><\/p>\n<p>Descargu\u00e9 el archivo de la p\u00e1gina y entr\u00e9 al men\u00fa Macros, buscando la macro para editar su c\u00f3digo:<\/p>\n<p><a href=\"http:\/\/betaweblog.education\/wp\/wp-content\/uploads\/2012\/10\/macros-en-openoffice.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-medium wp-image-3199\" title=\"macros en openoffice\" src=\"http:\/\/betaweblog.education\/wp\/wp-content\/uploads\/2012\/10\/macros-en-openoffice-300x191.jpg\" alt=\"Macros en OpenOffice Calc\" width=\"300\" height=\"191\" \/><\/a><\/p>\n<p>Para que funcione tuve que copiar el c\u00f3digo y pegarlo en una nueva macro (yendo a <em>Mis Macros \/ Standard \/ Module 1<\/em> y eligiendo el bot\u00f3n <em>Editar<\/em>).<\/p>\n<p>Modifiqu\u00e9 dos valores: donde dec\u00eda 49 puse 99, dos veces.<\/p>\n<blockquote><p>Sub Lotto<br \/>\nDim i<br \/>\nDim j<br \/>\nDim val<br \/>\nDim match<br \/>\noSheet = ThisComponent.Sheets(1)<br \/>\n<strong> For i = 1 To 99<\/strong><br \/>\noCell = oSheet.getCellByPosition(1,i)<br \/>\nDo<br \/>\nmatch = False<br \/>\n<strong>\u00a0\u00a0 val = int(rnd()*99) + 1<\/strong><br \/>\nFor j = 1 To i<br \/>\nIf val = oSheet.getCellByPosition(1,j).getValue() Then<br \/>\nmatch = True<br \/>\nEnd If<br \/>\nNext j<br \/>\nLoop Until (match = False)<br \/>\noCell.setValue(val)<br \/>\nNext i<br \/>\nEnd Sub<\/p><\/blockquote>\n<p>Despu\u00e9s prob\u00e9 ejecutar la macro y efectivamente puso 100 n\u00fameros al azar en la columna B.<\/p>\n<p>Lo siguiente es muy sencillo: en la columna C le puse una f\u00f3rmula que mostrar los valores de la columna B s\u00f3lo si hab\u00eda algo en la columna A:<\/p>\n<blockquote><p>=SI(A2&lt;&gt;&#8221;&#8221;;B2;&#8221; &#8220;)<\/p><\/blockquote>\n<p>Ocult\u00e9 la columna B, y entonces, cada vez que uno escribe algo (por ejemplo una equis, un asterisco, cualquier cosa) en la columna A, se muestra un n\u00famero en la columna C. Hay que ir escribiendo desde A2 hacia abajo:<\/p>\n<p><a href=\"http:\/\/betaweblog.education\/wp\/wp-content\/uploads\/2012\/10\/bingo.jpg\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-3200\" title=\"bingo\" src=\"http:\/\/betaweblog.education\/wp\/wp-content\/uploads\/2012\/10\/bingo.jpg\" alt=\"Bingo terminado\" width=\"418\" height=\"186\" \/><\/a><\/p>\n<p>Aqu\u00ed les dejo el archivo, para usarlo tal cual viene, o para modificarlo <em>a piaccere<\/em>: <a href=\"http:\/\/betaweblog.education\/wp\/wp-content\/uploads\/2012\/10\/bingo.ods\">bingo<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Un colega pregunt\u00f3 en la lista de gleducar por un programa libre (con licencia libre, no simplemente gratuito), para generar los n\u00fameros del bingo. Yo pens\u00e9 en crear los n\u00fameros al azar con la funci\u00f3n aleatorio() en calc, pero ten\u00eda el problema de c\u00f3mo saber si los n\u00fameros ya salieron anteriormente. Como no encontr\u00e9 manera &hellip; <a href=\"https:\/\/irisfernandez.com.ar\/betaweblog\/index.php\/2012\/10\/01\/bingo-un-generador-de-numeros-hecho-en-openoffice-calc\/\" class=\"more-link\">Continuar leyendo<span class=\"screen-reader-text\"> &#8220;\u00a1Bingo! Un generador de n\u00fameros hecho en OpenOffice Calc&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3],"tags":[],"class_list":["post-3198","post","type-post","status-publish","format-standard","hentry","category-cultura-libre"],"_links":{"self":[{"href":"https:\/\/irisfernandez.com.ar\/betaweblog\/index.php\/wp-json\/wp\/v2\/posts\/3198","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/irisfernandez.com.ar\/betaweblog\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/irisfernandez.com.ar\/betaweblog\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/irisfernandez.com.ar\/betaweblog\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/irisfernandez.com.ar\/betaweblog\/index.php\/wp-json\/wp\/v2\/comments?post=3198"}],"version-history":[{"count":0,"href":"https:\/\/irisfernandez.com.ar\/betaweblog\/index.php\/wp-json\/wp\/v2\/posts\/3198\/revisions"}],"wp:attachment":[{"href":"https:\/\/irisfernandez.com.ar\/betaweblog\/index.php\/wp-json\/wp\/v2\/media?parent=3198"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/irisfernandez.com.ar\/betaweblog\/index.php\/wp-json\/wp\/v2\/categories?post=3198"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/irisfernandez.com.ar\/betaweblog\/index.php\/wp-json\/wp\/v2\/tags?post=3198"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}