Opdeelen kleet Text mat der FILTER.XML Funktioun

Inhalter

Méi kierzlech diskutéiert mir d'Benotzung vun der FILTER.XML Funktioun fir XML Daten aus dem Internet z'importéieren - d'Haaptaufgab fir déi dës Funktioun tatsächlech geduecht ass. Ënnerwee ass awer eng aner onerwaart a schéin Notzung vun dëser Funktioun opgetaucht - fir séier klebrig Text an Zellen ze deelen.

Loosst eis soen datt mir eng Datekolonne wéi dës hunn:

Opdeelen kleet Text mat der FILTER.XML Funktioun

Natierlech, fir d'Bequemlechkeet, wéilt ech et an getrennten Sailen opdeelen: Firmennumm, Stad, Strooss, Haus. Dir kënnt dat op eng Rëtsch verschidde Weeër maachen:

  • benotzt Text duerch Kolonnen vum Tab Daten (Daten - Text zu Kolonnen) a gitt dräi Schrëtt Text Parser. Awer wann d'Donnéeën muer änneren, musst Dir de ganze Prozess erëm widderhuelen.
  • Lued dës Donnéeën an d'Power Query an deelt se do, lued se dann zréck op d'Blat, an aktualiséieren dann d'Ufro wann d'Donnéeën änneren (wat scho méi einfach ass).
  • Wann Dir op der Flucht muss aktualiséieren, da kënnt Dir e puer ganz komplex Formelen schreiwen fir Kommaen ze fannen an den Text tëscht hinnen ze extrahieren.

An Dir kënnt et méi elegant maachen an d'FILTER.XML Funktioun benotzen, awer wat huet et domat ze maachen?

D'FILTER.XML Funktioun kritt als initial Argument en XML Code - Text markéiert mat speziellen Tags an Attributer, an dann parses et a seng Komponente, Extrait der Datefragmenter mir brauchen. Den XML Code gesäit normalerweis sou eppes aus:

Opdeelen kleet Text mat der FILTER.XML Funktioun

An XML muss all Dateelement an Tags zougemaach ginn. En Tag ass en Text (am Beispill uewendriwwer ass et Manager, Numm, Gewënn) an de Wénkelklammern zougemaach. Tags kommen ëmmer a Pairen - Ouverture a Schließen (mat engem Slash am Ufank bäigefüügt).

D'FILTER.XML Funktioun kann einfach den Inhalt vun all Tags Extrait mir brauchen, Zum Beispill, d'Nimm vun all Manager, an (am Wichtegsten) weisen se all op eemol an enger Lëscht. Also ass eis Aufgab Tags un de Quelltext ze addéieren, an en XML-Code ze maachen, dee gëeegent ass fir eng spéider Analyse vun der FILTER.XML Funktioun.

Wa mir déi éischt Adress aus eiser Lëscht als Beispill huelen, da musse mir et an dës Konstruktioun ëmsetzen:

Opdeelen kleet Text mat der FILTER.XML Funktioun

Ech genannt der globaler Ouverture an zoumaachen all Text Tag t, an d'Tags, déi all Element entfalen, sinn s., awer Dir kënnt all aner Bezeechnungen benotzen - et ass egal.

Wa mir Abriecher an Zeilenbriechungen aus dësem Code ewechhuelen - komplett, iwwregens, fakultativ an nëmme fir Kloerheet bäigefüügt, da wäert dat alles an eng Linn ginn:

Opdeelen kleet Text mat der FILTER.XML Funktioun

An et ass scho relativ einfach aus der Quelladress ze kréien, andeems d'Kommaen dran duerch e puer Tags ersat ginn benotzt d'Funktioun SUBSTITUT (SUBSTITUT) a gekollt mam Symbol & um Ufank an Enn vun den Eröffnungs- a Schlusstags:

Opdeelen kleet Text mat der FILTER.XML Funktioun

Fir déi resultéierend Gamme horizontal auszebauen, benotze mir d'Standardfunktioun TRANSP (TRANSPOSE), wéckelt eis Formel dran:

Opdeelen kleet Text mat der FILTER.XML Funktioun

Eng wichteg Feature vun dësem ganzen Design ass datt an der neier Versioun vum Office 2021 an Office 365 mat Ënnerstëtzung fir dynamesch Arrays keng speziell Gesten fir Input erfuerderlech sinn - gitt einfach a klickt op gitt - d'Formel selwer besetzt d'Zuel vun den Zellen déi se brauch an alles funktionnéiert mat engem Knall. A fréiere Versiounen, wou et nach keng dynamesch Arrays waren, musst Dir fir d'éischt eng genuch Zuel vun eidelen Zellen auswielen ier Dir d'Formel agitt (Dir kënnt mat enger Marge), an nodeems Dir d'Formel erstallt hutt, dréckt d'Tastatur Ofkiirzung Ctrl+Verréckelung+gittfir et als Arrayformel anzeginn.

En ähnlechen Trick ka benotzt ginn wann Dir Text trennt, deen an enger Zell duerch eng Zeilpaus zesummenhänkt:

Opdeelen kleet Text mat der FILTER.XML Funktioun

Deen eenzegen Ënnerscheed mam fréiere Beispill ass datt amplaz vun engem Comma hei den onsichtbare Alt + Enter Zeilpaus Charakter ersetzen, deen an der Formel mat der CHAR Funktioun mam Code 10 spezifizéiert ka ginn.

  • D'Subtilitéite fir mat Zeilpausen ze schaffen (Alt + Enter) an Excel
  • Deelt Text duerch Spalten an Excel
  • Ersetzen Text mat SUBSTITUT

Hannerlooss eng Äntwert