Finessene ved å jobbe med linjeskift i Excel

Linjeskift i samme celle, lagt til ved hjelp av en hurtigtast andre+Enter er en veldig vanlig og vanlig ting. Noen ganger er de laget av brukerne selv for å legge til skjønnhet til lang tekst. Noen ganger legges slike overføringer til automatisk når man laster ut data fra alle fungerende programmer (hei 1C, SAP, etc.) Problemet er at da må man ikke bare beundre slike tabeller, men jobbe med dem – og da kan disse usynlige tegnoverføringene være en problem. Og de blir kanskje ikke det – hvis du vet hvordan du skal håndtere dem riktig.

La oss ta en titt på dette problemet mer detaljert.

Fjerne linjeskift ved å erstatte

Hvis vi trenger å bli kvitt bindestreker, er det første som vanligvis kommer til tankene den klassiske "finn og erstatt"-teknikken. Velg teksten og ring deretter erstatningsvinduet med en hurtigtast Ctrl+H eller via Hjem – Finn og velg – Erstatt (Hjem — Finn og velg — Erstatt). En inkonsistens – det er ikke veldig klart hvordan du går inn i det øverste feltet Å finne (Finne hva) vår usynlige linjeskiftkarakter. andre+Enter her fungerer det dessverre ikke lenger, kopiering av dette symbolet direkte fra cellen og lim det inn her mislykkes også.

En kombinasjon vil hjelpe Ctrl+J – det er alternativet andre+Enter i Excel-dialogbokser eller inndatafelt:

Vær oppmerksom på at etter at du har plassert den blinkende markøren i det øverste feltet og trykker Ctrl+J – ingenting vises i selve feltet. Ikke vær redd – dette er normalt, symbolet er usynlig 🙂

Til bunnfeltet Erstatning (Erstatt med) enten ikke skriv inn noe, eller skriv inn et mellomrom (hvis vi ikke bare vil fjerne bindestreker, men erstatte dem med et mellomrom slik at linjene ikke henger sammen til en enkelt helhet). Bare trykk på knappen Bytt ut alt (Erstatt alle) og bindestrekene våre forsvinner:

Nuance: etter å ha utført utskiftingen angitt med Ctrl+J usynlig karakter forblir i feltet Å finne og kan forstyrre i fremtiden – ikke glem å slette den ved å plassere markøren i dette feltet og flere ganger (for pålitelighet) trykke på tastene Delete и Backspace.

Fjerne linjeskift med en formel

Hvis du trenger å løse problemet med formler, kan du bruke den innebygde funksjonen SKRIV (REN), som kan fjerne teksten for alle tegn som ikke kan skrives ut, inkludert våre skjebnesvangre linjeskift:

Dette alternativet er imidlertid ikke alltid praktisk, fordi linjer etter denne operasjonen kan limes sammen. For å forhindre at dette skjer, må du ikke bare fjerne bindestreken, men erstatte den med et mellomrom (se neste avsnitt).

Erstatte linjeskift med en formel

Og hvis du ikke bare vil slette, men erstatte andre+Enter på for eksempel en plass, vil en annen, litt mer kompleks konstruksjon være nødvendig:

For å sette en usynlig bindestrek bruker vi funksjonen SYMBOL (CHAR), som sender ut et tegn ved sin kode (10). Og så funksjonen ERSTATNING (ERSTATNING) søker etter bindestrekene våre i kildedataene og erstatter dem med annen tekst, for eksempel med et mellomrom.

Inndeling i kolonner etter linjeskift

Kjent for mange og veldig hendig verktøy Tekst etter kolonner fra fanen Data (Data – tekst til kolonner) kan også fungere utmerket med linjeskift og dele teksten fra én celle i flere, bryte den med andre+Enter. For å gjøre dette, i det andre trinnet i veiviseren, må du velge en variant av det egendefinerte skilletegn Annen (Tilpasset) og bruk tastatursnarveien vi allerede kjenner Ctrl+J som et alternativ andre+Enter:

Hvis dataene dine kan inneholde flere linjeskift på rad, kan du "skjule" dem ved å slå på avmerkingsboksen Behandle påfølgende skilletegn som én (Behandle påfølgende skilletegn som én).

Etter å ha klikket på neste (Neste) og går gjennom alle tre trinnene i veiviseren, får vi ønsket resultat:

Vær oppmerksom på at før du utfører denne operasjonen, er det nødvendig å sette inn et tilstrekkelig antall tomme kolonner til høyre for den delte kolonnen slik at den resulterende teksten ikke overskriver verdiene (prisene) som var til høyre.

Del inn i linjer med Alt + Enter gjennom Power Query

En annen interessant oppgave er å dele flerlinjeteksten fra hver celle, ikke i kolonner, men i linjer:

Det tar lang tid å gjøre dette manuelt, det er vanskelig med formler, ikke alle kan skrive en makro. Men i praksis oppstår dette problemet oftere enn vi ønsker. Den enkleste og enkleste løsningen er å bruke Power Query-tillegget for denne oppgaven, som har vært innebygd i Excel siden 2016, og for tidligere versjoner 2010-2013 kan det lastes ned helt gratis fra Microsofts nettside.

For å laste kildedataene inn i Power Query, må du først konvertere dem til en "smarttabell" med en hurtigtast Ctrl+T eller med knapp Formater som en tabell tab Hjemprodukt (Hjem — Formater som tabell). Hvis du av en eller annen grunn ikke vil eller ikke kan bruke "smarte tabeller", kan du jobbe med "dumme". I dette tilfellet velger du bare det opprinnelige området og gir det et navn på fanen Formler – Navnebehandler – Ny (Formler – Navnebehandler – Ny).

Etter det, på fanen Data (hvis du har Excel 2016 eller nyere) eller på fanen Strømforespørsel (hvis du har Excel 2010-2013) kan du klikke på knappen Fra bord/sortiment (Fra tabell/område)for å laste tabellen vår inn i Power Query-redigeringsprogrammet:

Etter å ha lastet, velg kolonnen med flerlinjetekst i cellene og velg kommandoen på hovedfanen Del kolonne – etter skilletegn (Hjem — Delt kolonne — Etter skilletegn):

Mest sannsynlig vil Power Query automatisk gjenkjenne divisjonsprinsippet og erstatte selve symbolet #(lf) usynlig linjeskifttegn (lf = linjeskift = linjeskift) i skillefeltet. Om nødvendig kan andre tegn velges fra rullegardinlisten nederst i vinduet, hvis du først krysser av i boksen Del opp med spesialtegn (Delt med spesialtegn).

Slik at alt er delt inn i rader, og ikke kolonner - ikke glem å bytte velgeren Rader (etter rader) i gruppen for avanserte alternativer.

Det gjenstår bare å klikke videre OK og få det du vil ha:

Det ferdige bordet kan lastes tilbake på arket ved hjelp av kommandoen Lukk og last – Lukk og last inn... tab Hjemprodukt (Hjem — Lukk&last — Lukk&last til...).

Det er viktig å merke seg at når du bruker Power Query, må du huske at når kildedataene endres, oppdateres ikke resultatene automatisk, fordi. dette er ikke formler. For å oppdatere må du høyreklikke på den siste tabellen på arket og velge kommandoen Oppdater og lagre (Forfriske) eller trykk på knappen Oppdater alle tab Data (Data – Oppdater alle).

Makro for inndeling i linjer med Alt+Enter

For å fullføre bildet, la oss også nevne løsningen av det forrige problemet ved hjelp av en makro. Åpne Visual Basic Editor ved å bruke knappen med samme navn på fanen Utvikler (Utvikler) eller hurtigtaster andre+F11. I vinduet som vises setter du inn en ny modul gjennom menyen Sett inn – modul og kopier følgende kode dit:

Sub Split_By_Rows() Dim celle As Range, n As Heltall Set celle = ActiveCell For i = 1 To Selection.Rows.Count ar = Split(celle, Chr(10)) 'bestem antall fragmenter celle.Offset(1, 0 ).Resize(n, 1).EntireRow.Insert 'insert tomme rader under celle.Resize(n + 1, 1) = WorksheetFunction.Transpose(ar) 'skriv inn data fra matrisen Set cell = cell.Offset(n) + 1, 0) 'skift til neste celle Neste i End Sub  

Gå tilbake til Excel og velg cellene med flerlinjeteksten du vil dele. Bruk deretter knappen Makroer tab utvikler (Utvikler – Makroer) eller hurtigtast andre+F8for å kjøre den opprettede makroen, som vil gjøre alt arbeidet for deg:

Voila! Programmerere er faktisk bare veldig late mennesker som heller vil jobbe hardt en gang og så ikke gjøre noe 🙂

  • Rydder opp tekst fra søppel og ekstra tegn
  • Erstatter tekst og fjerner ikke-brytende mellomrom med ERSTATT-funksjonen
  • Hvordan dele klebrig tekst i deler i Excel

Legg igjen en kommentar