web-dev-qa-db-fra.com

Comment convertir une cellule au standard RFC 3986 (URLEncoded) dans Google Spreadsheets?

Est-il possible de convertir le texte d'une cellule donnée en RFC 3986 ( http://url-encoder.org/ ) dans une feuille de calcul Google?
Disons que C4 a la valeur John Doe, alors D4 doit être John%20Doe.

32
linda

Oui, vous pouvez créer une fonction personnalisée pour cela.

Cliquez sur Outils → Editeur de script . Sélectionnez Créer un projet vide .

Dans la fenêtre de l'éditeur de script, collez le code suivant:

function encode(value) {
  return encodeURIComponent(value);
}

Enregistrez le script (nommez-le si vous y êtes invité) et retournez à votre feuille de calcul.

Maintenant, vous pouvez utiliser la fonction comme =encode. Si votre cellule C4 contient le texte John Doe, entrez les informations suivantes dans votre cellule D4: =encode(C4).

D4 devrait maintenant afficher John%20Doe.

J'ai créé n exemple de feuille de calcul pour démontrer.

43
Vidar S. Ramdal

Pour la référence de other - une méthode similaire fonctionne également pour le décodage.

function decode(value) {
  return decodeURIComponent(value);
}
6
Bhavin

Vous pouvez le faire sans fonction personnalisée en utilisant ENCODEURL.

par exemple:

=hyperlink(
  ENCODEURL(A1)
)
4
SimplGy

Pour les autres qui recherchent encore cela, Google Sheets dispose désormais d'une fonction appelée ENCODEURL (août 2018). Vous n'avez donc plus besoin de créer la vôtre.

3
Donald Love