Probleme fonction app script
Résolubonjour,
j'essaie de faire respecter le format d'entrée de 4 nombre dans la cellule mais j'ai l'impression que ca ne marche pas
j'ai réalisé ceci
function Nombre () {
var feuille = SpreadsheetApp.getActiveSpreadsheet ()
.getActiveSheet ();
var format = /[0-9]/;
const longueur = 4;
const regex = new RegExp ();
var chiffre = format.test ();
if ((chiffre > 0 | chiffre <= longueur) == true) {
myvar = feuille.getRange ('A4')
.getValue ();
Logger.log (regex.test ());
} else {
Browser.msgBox("vous devez respecter le format");
}
};
2 réponses
-
Modérateur
Bonjour
La méthode test() vérifie s'il y a une correspondance entre un texte et une expression rationnelle. Elle retourne true en cas de succès et false dans le cas contraire.
Donc ta variable chiffre est juste un booleen ..
De plus, tu as oublié un paramètre lors de l'appel de la méthode test
Le nombre à vérifier.....
Voici un exemple d'utilisation
const chaine = "coucou le monde !"; const resultat = /^coucou/.test(chaine);
-
function NomSource2 () { var app = SpreadsheetApp; var feuille = app.getActiveSpreadsheet () .getActiveSheet (); var cellule = feuille.getRange ('G3') .getValue (); var format = /[a-z] | [A-Z]/; analyse = format.test (cellule); Logger.log (analyse); if (analyse >= 5 | analyse <= 64) { feuille.getRange ('F3') .setValue ("Vrai"); } else { feuille.getRange ('F3') .setValue ("Faux"); } };bonjour,
j'ai un soucis avec ma variable analyse car quand je rentre moins de 5 caractères il retourne pas la bonne valeur quand je fais un logger dessus il me dis qu'elle est tout le temps fausse
merci pour votre aide
cordialement
-
-
Modérateur@lwdu76
Peux tu expliquer exactement ce que tu veux vérifier avec ta regex ?
Elle me semble fausse...
De plus, comme je te l'ai déjà dit, la fonction regex.test retourne un BOOLEEN .. mais ne te permettra pas de vérifier la taille de ta chaine ( enfin.. si .. mais avec une regex mieux faite )
Donc :
Qu'est-ce que tu entres comme valeur... et qu'obtiens tu ? Et que penses tu devoir obtenir ?
PS: Par exemple, pour tester si une chaine est uniquement un text.. et ayant au minimum 5 caractères et un max de 64, tu pourrais utiliser une regex du genre
[a-z|A-Z]{5,64}.
-
@jordane45
bonjour,
je voulais savoir je dois faire un format horaire comme 21h00 j'ai ecrit ceci
var format = /[0-9]{2}\/h\/[0-9]{2}/;
-
-
Bonjour,
J'avais une question je cherche à tester si mes 4 variable a1, ..., a4 ne sont pas fausse
Mais je ne sais pas comment faire, j'avais pensé à faire un switch
Car mes variables sont définis comme var
cellule1 = feuille.getRange ('B1´).getValue ();Idem jusqu'à
var cellule4 = .... Puis
analyse1 = format.test (cellule1) ... jusqu'à analyse4Après c'est pour le test de tout les variables analyse1, ... , analyse4
-
-
@jordane45
D'accord
-
@lwdu76
probleme resolu
-