ALL Apps Scripts Google Sheets

Google Sheets : DT Picker

Ecrit par Thierry

Dans Excel, la fonctionnalité Contrôle de calendrier et Contrôle de Date and Time Picker (outil de sélection de la date et de l’heure) n’est pas disponible. Pour l’utiliser ou ouvrir un document d’Office 2003 dans lequel elle a été utilisée, vous devez l’installer manuellement ; sinon, vous pourrez la visualiser mais pas effectuer de modifications. Dans Google Sheets, cette fonctionnalité est en natif quand on sait la trouver. Gilbert ROINEL vous explique comment faire avec ce gif animé :

Complément : à la première date il est possible que le format soit yyyy/mm/dd, il suffit de changer ce format en dd/mm/yyyy pour l’avoir par la suite correctement.
Le coller/copier entraîne le changement de format.

Vous pouvez aussi y parvenir à l’aider d’un script :

Merci et bravo à Gilbert ROINEL pour ces informations.

Vous pouvez utiliser ces lignes de code pour créer un DTpicker dans Google Sheets

function listBoxVersion() {
  var app = UiApp.createApplication().setTitle('Time Picker');
  var main = app.createGrid(2, 4);
  var date = app.createDateBox().setName('date');
  var hour = app.createListBox().setName('hour').setWidth('100');
  var min = app.createListBox().setName('min').setWidth('100');
  for (h=0;h<24;++h){
  if(h<10){var hourstr='0'+h}else{var hourstr=h.toString()}
  hour.addItem(hourstr)
  }
  for (m=0;m<60;++m){
  if(m<10){var minstr='0'+m}else{var minstr=m.toString()}
  min.addItem(minstr)
  }
  var button = app.createButton('validate')
  main.setWidget(0,0,app.createLabel('Choose Date')).setWidget(0,1,app.createLabel('Choose Hours')).setWidget(0,2,app.createLabel('Choose minutes'))
  main.setWidget(1,0,date).setWidget(1,1,hour).setWidget(1,2,min)
  main.setWidget(1,3,button)
  var handler = app.createServerHandler('show').addCallbackElement(main)
  button.addClickHandler(handler)
  app.add(main)
  ss=SpreadsheetApp.getActive()
  ss.show(app)
}

function show(e){
  ss=SpreadsheetApp.getActive()
  ss.getRange('A1').setValue(Utilities.formatDate(e.parameter.date,'GMT+02:00','MMM-dd-yyyy')+'  @ '+e.parameter.hour+':'+e.parameter.min)
  var date = new Date(e.parameter.date);
  date.setHours(e.parameter.hour,e.parameter.min,0)
  ss.getRange('A2').setValue(date)
  }

 

Notez cette information
[Total: 0 Average: 0]

A propos de l'auteur

Thierry

Thierry VANOFFE, consultant, formateur, coach G Suite.
Passionné et fasciné par Google, ce blog me permet de partager cette passion et distiller tutos, trucs, astuces, guides sur les outils Google.
N'hésitez pas à me solliciter pour vos formations en ligne ou en présentiel.

Laisser un commentaire