Convertissez tout le texte en MAJUSCULES dans une feuille de calcul Google

11

J'ai une feuille de calcul que je partage avec d'autres pour collecter des données. Chaque personne est juste (censée être) mettre un seul caractère dans une plage de cellules.

Comment puis-je convertir ces cellules en majuscules?

L'utilisation =UPPER()dans chaque cellule semble être un non-démarrage, car elle sera écrasée par ce qu'ils entreront.

ale
la source
Quelqu'un pourrait-il développer cette réponse s'il vous plaît? Plus précisément, lorsque j'ai écrit et enregistré mon script, comment dois-je l'exécuter sur une plage de cellules donnée dans ma feuille de calcul Google?
2018

Réponses:

12

Voici un script qui convertit automatiquement les entrées en majuscules:

function onEdit(e) {
  if (typeof e.value != 'object') {
    e.range.setValue(e.value.toUpperCase());
  }
}

Dans la feuille de calcul, accédez à Outils> Éditeur de script. Mettez le code ci-dessus dans la fenêtre de code (en remplaçant tout ce qui y est pré-rempli) et enregistrez.


Si vous souhaitez appliquer les entrées en majuscules et à un seul caractère, la validation des données peut être utilisée, avec une formule personnalisée

=regexmatch(A1,"^[A-Z]$")

Cela suppose que le coin supérieur gauche de la plage est A1 et que vous attendez des lettres de l'alphabet latin. L'expression régulière ^[A-Z]$signifie: début de chaîne; caractère unique dans la plage AZ; fin de chaîne.


la source
Quelqu'un pourrait-il développer cette réponse s'il vous plaît? Plus précisément, lorsque j'ai écrit et enregistré mon script, comment dois-je l'exécuter sur une plage de cellules donnée dans ma feuille de calcul Google?
2018
@tomh ce script fonctionne pour une feuille de calcul entière. avez-vous envisagé d'utiliser =ARRAYFORMULA(UPPER(A:Z)?
user0
Salut - Je demande le processus étape par étape pour prendre le script et l'appliquer à une plage de cellules en surbrillance dans une feuille. Idéalement à partir d'une commande de menu
tomh
@tomh avez-vous fait fonctionner ce script?
user0
Non. J'ai utilisé un module complémentaire appelé Cases pour obtenir le même effet. Mais je voudrais savoir comment appliquer un script à une série de cellules dans une feuille, et je pense que ce serait une réponse utile sur ce post.
tomh
1

C'est ce que tu veux .

Modifiez simplement cette ligne dans le script ...

ui.createMenu ('Menu personnalisé')

...pour ça...

ui.createMenu ('Changement de casse')

... pour votre bien.

Erik Tyler
la source