Wie konvertiere ich eine Zelle nach RFC 3986-Standard (URLEncoded) in Google Spreadsheets?

Antworten:

43

Ja, Sie können dafür eine benutzerdefinierte Funktion erstellen.

Klicken Sie auf Extras → Skripteditor . Wählen Sie Leeres Projekt erstellen .

Fügen Sie im Skripteditor den folgenden Code ein:

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

Speichern Sie das Skript (geben Sie ihm einen Namen, wenn Sie dazu aufgefordert werden) und kehren Sie zu Ihrer Tabelle zurück.

Jetzt können Sie die Funktion als verwenden =encode. Wenn Ihre C4Zelle den Text enthält John Doe, geben Sie in Ihre D4Zelle: =encode(C4).

D4sollte jetzt anzeigen John%20Doe.

Ich habe zur Veranschaulichung eine Beispieltabelle erstellt .

Vidar S. Ramdal
quelle
2
Dies war eine ausgezeichnete Antwort, als es gegeben wurde. Es gibt jetzt eine native Funktion =ENCODEURLin Sheets ( siehe unten ).
Tyler James Young
6

Als Referenz für andere - eine ähnliche Methode funktioniert auch für die Dekodierung.

function decode(value) {
  return decodeURIComponent(value);
}
Bhavin
quelle
4

Sie können dies ohne eine benutzerdefinierte Funktion mit tun ENCODEURL.

z.B:

=hyperlink(
  ENCODEURL(A1)
)
Einfach
quelle
3

Für andere, die noch danach suchen, hat Google Sheets jetzt (August 2018) eine Funktion mit dem Namen ENCODEURL, sodass Sie keine eigenen mehr erstellen müssen.

Donald Love
quelle
Ich wünschte, ich hätte das zuerst gesehen!
Tyler James Young