Descargas, guías, trucos, gameplays...

jueves, 14 de junio de 2012

Google Apps Script: ListBox



Google Apps Script  también tiene múltiples controles al igual que Microsoft VBA. Esta vez veremos un ejemplo de ListBox y como utilizar el valor seleccionado en el.

Con un nuevo archivo de Google Hoja de Cálculo en un proyecto nuevo en el Editor de secuencia de comandos copiar y pegar el siguiente código:
function Ejemplo() {
   var libro = SpreadsheetApp.getActiveSpreadsheet();
   var cuadro = UiApp.createApplication().setTitle('Ejemplo de ListBox');
   var panel1 = cuadro.createHorizontalPanel(); //espacio donde se agruparan controles
                                                    //este indica un orden horizontal
   var ListBox = cuadro.createListBox(true) //se declara el ListBox
                 .setId('ID001').setName('nombres') //identificación del List Box
                 .setWidth(150); //ancho del ListBox

   ListBox.setVisibleItemCount(5); //cuantos elementos se desea visualizar
   ListBox.addItem('Juan'); //agregar items al ListBox
   ListBox.addItem('Pérez');
   ListBox.addItem('Alberto');
   ListBox.addItem('Manuel');
   ListBox.addItem('García');
   ListBox.addItem('Felix');
   ListBox.addItem('Carlos');
   ListBox.addItem('Manfredo');

   var Button = cuadro.createButton('Copiar a A1'); //declara un botón para usar el valor seleccionado del ListBox
   var Evento = cuadro.createServerClickHandler('EventoClic').addCallbackElement(panel1); //se declara el evento clic del Button
   Button.addClickHandler(Evento);

   panel1.add(ListBox); //se agrega el ListBox al panel1
   panel1.add(Button); //se agrega el Button al panel1
   cuadro.add(panel1); //se agrega el panel1 a cuadro
   libro.show(cuadro); //se muestra cuadro
 }


 function EventoClic(eventInfo) {
   var cuadro = UiApp.getActiveApplication();

   var value = eventInfo.parameter.nombres; //toma el valor del ListBox

   var libro = SpreadsheetApp.getActiveSpreadsheet();
   
   
   libro.getRange('A1').setValue(value); //asigna el valor seleccionado del ListBox a la celda A1
   return cuadro;
 }


Desde el "Administrador de secuencias de comandos..." ejecutar la función "Ejemplo". Al presionar "Copiar a A1" vemos como el valor seleccionado efectivamente se copia a la celda A1:








No hay comentarios:

Publicar un comentario