Petit programme de comparaison de valeur

Résolu/Fermé
CyrilEstPerdu - Modifié le 1 déc. 2017 à 17:00
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 - 6 déc. 2017 à 09:57
Bonjour, je vais être court et concis : voici une ébauche de mon programme, si j’arrive à comprendre pourquoi ça ne marche pas, je serais en mesure de faire tout ce que je veux. Mais la, je bloque...
Une âme charitable pour venir à mon secours?

function AUTO(){
  var document = SpreadsheetApp.getActive();
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheets()[2]; 
  
  var cell = sheet.getRange("M96"); 
  var jour = sheet.getRange("A86");
  
  if (jour==6||jour==5||jour==4||jour==3||jour==2)
  ( cell.setValue(100))
  
}

1 réponse

Utilisateur anonyme
1 déc. 2017 à 21:05
Bonjour

Je ne connais pas l'API que tu utilises, mais si sheet.getRange("M96") récupère une cellule, je suppose que sheet.getRange("A86") en fait autant. Or, c'est une valeur que tu veux récupérer, pas la totalité de la cellule. N'aurais-tu pas dû écrire
var jour = sheet.getRange("A86").getValue();
ou quelque chose du genre ?
1
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650
1 déc. 2017 à 21:31
0
CyrilEstPerdu
4 déc. 2017 à 09:34
Merci les gars c'est parfait ! Je me doutais qu'il y a avait un truc comme ça mais je en trouvais pas la bonne orthographe
0
En ft je me suis un peu enflammé, pour afficher une valeur défini cela marche parfaitement mais ce que je veux c'est affiché la valeur d'une case particulière.
Comme ça :
function AUTO(){
  var document = SpreadsheetApp.getActive();
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheets()[2]; 
  var range = sheet.getDataRange();
  
  var cell = sheet.getRange("M96"); 
  var jour = sheet.getRange("A86").getValue();
  
  if (jour==6||jour==5||jour==4||jour==3||jour==2)
    (  cell = ("K93"))
    
}

Sauf que c'est pas aussi simple.. J'ai tenté pleins de combinaison avec getValue mais rien ne marche comme je voudrais. Auriez-vous la solution?

Merci pour les liens d'aide mais c'est un peu trop compliqué pour mon niveau de codage, je ne comprends pas tout

EDIT : Ajout des balises de code

0
jordane45 Messages postés 38145 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 25 avril 2024 4 650 > CyrilEstPerdu
4 déc. 2017 à 11:28
C'est quoi qui ne marche pas au juste ?
Ne serait-ce pas :
cell = ("K93"))

??

As tu lu les liens que je t'ai donné ?

Car ... comme pour lire une valeur il faut utiliser un getValue .... pour METTRE une valeur... il faut un setValue
https://developers.google.com/apps-script/reference/spreadsheet/range#setValue(Object)
0
Oui c'était ça qui ne marchait pas, mais j'ai reussi à solutionner mon problème comme ça:
function AUTO(){
  var document = SpreadsheetApp.getActive();
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheets()[2]; 
  var range = sheet.getDataRange();
  
  var cell = sheet.getRange("M96"); 
  var jour = sheet.getRange("A86").getValue();
  var value = sheet.getRange("K93").getValue();
  
  if (jour==6||jour==5||jour==4||jour==3||jour==2)
    ( cell.setValue(value))
    
}

Je voulais afficher en M96 la valeur de K93 quand le if est vrai !

Merci pour l'aide :D
0