Sisällysluettelo
Kun työskentelet strukturoimattomien tekstidatojen kanssa työarkkeissasi, sinun on usein analysoitava niitä saadaksesi olennaisia tietoja. Tässä artikkelissa opetetaan muutamia yksinkertaisia tapoja, joilla voit poistaa minkä tahansa määrän merkkejä merkkijonon vasemmalta tai oikealta puolelta.
Kuinka poistaa merkkejä vasemmalta Excelissä
Ensimmäisten merkkien poistaminen merkkijonosta on yksi Excelin yleisimmistä tehtävistä, ja se voidaan suorittaa kolmella eri kaavalla.
Poista ensimmäinen merkki Excelissä
Jos haluat poistaa merkkijonon ensimmäisen merkin, voit käyttää joko REPLACE-funktiota tai RIGHT- ja LEN-funktioiden yhdistelmää.
REPLACE( merkkijono , 1, 1, "")Tässä yksinkertaisesti otetaan 1 merkki ensimmäisestä kohdasta ja korvataan se tyhjällä merkkijonolla ("").
RIGHT( merkkijono , LEN( merkkijono ) - 1)Tässä kaavassa käytämme LEN-funktiota merkkijonon kokonaispituuden laskemiseen ja vähennämme siitä yhden merkin. Erotus syötetään RIGHT:iin, joten merkkijonon lopusta poistetaan näin monta merkkiä.
Jos haluat esimerkiksi poistaa ensimmäisen merkin solusta A2, kaavat ovat seuraavat:
=REPLACE(A2, 1, 1, "")
=RIGHT(A2, LEN(A2) - 1)
Poista merkit vasemmalta
Jos haluat poistaa etumerkkejä merkkijonon vasemmalta puolelta, voit käyttää myös REPLACE- tai RIGHT- ja LEN-funktioita, mutta määritä, kuinka monta merkkiä haluat poistaa joka kerta:
REPLACE( string , 1, num_chars , "")Tai
RIGHT( merkkijono , LEN( merkkijono ) - num_chars )Esimerkiksi, jos haluat poistaa 2 ensimmäistä merkkiä merkkijonosta A2, kaavat ovat:
=REPLACE(A2, 1, 2, "")
=RIGHT(A2, LEN(A2) - 2)
Poistaaksesi 3 ensimmäistä merkit , kaavat ovat seuraavassa muodossa:
=REPLACE(A2, 1, 3, "")
=RIGHT(A2, LEN(A2) - 3)
Alla olevassa kuvakaappauksessa näkyy REPLACE-kaava toiminnassa. RIGHT LENin avulla tulokset olisivat täsmälleen samat.
Mukautettu toiminto ensimmäisten n merkin poistamiseksi
Jos sinua ei haittaa VBA:n käyttäminen työarkissasi, voit luoda oman käyttäjän määrittelemän funktion, jolla poistetaan merkkejä merkkijonon alusta, nimellä RemoveFirstChars Toiminnon koodi on näin yksinkertainen:
Function RemoveFirstChars(str As String , num_chars As Long ) RemoveFirstChars = Right(str, Len(str) - num_chars) End FunctionKun koodi on lisätty työkirjaan (yksityiskohtaiset ohjeet ovat täällä), voit poistaa n ensimmäistä merkkiä tietystä solusta käyttämällä tätä kompaktia ja intuitiivista kaavaa:
RemoveFirstChars(string, num_chars)Jos haluat esimerkiksi poistaa ensimmäinen merkki merkkijonosta A2, B2:n kaava on:
=RemoveFirstChars(A2, 1)
Riisua kaksi ensimmäistä merkkejä A3:sta, B3:n kaava on:
=RemoveFirstChars(A4, 2)
Poistaminen kolme ensimmäistä merkkejä A4:stä, kaava B4:ssä on:
=RemoveFirstChars(A4, 3)
Lisätietoja mukautettujen funktioiden käyttämisestä Excelissä.
Kuinka poistaa merkkejä oikealta
Voit poistaa merkkejä merkkijonon oikealta puolelta myös käyttämällä natiivifunktioita tai luomalla oman funktion.
Viimeisen merkin poistaminen Excelissä
Jos haluat poistaa solun viimeisen merkin, yleinen kaava on:
LEFT( merkkijono , LEN( merkkijono ) - 1)Tässä kaavassa merkkijonon kokonaispituudesta vähennetään 1 ja välität erotuksen LEFT-funktiolle, jotta se poimii kyseisen määrän merkkejä merkkijonon alusta.
Jos esimerkiksi haluat poistaa viimeisen merkin solusta A2, B2:n kaava on seuraava:
=LEFT(A2, LEN(A2) - 1)
Poista merkit oikealta
Jos haluat poistaa tietyn määrän merkkejä solun lopusta, yleinen kaava on:
LEFT( string , LEN( merkkijono ) - num_chars )Logiikka on sama kuin yllä olevassa kaavassa, ja alla on pari esimerkkiä.
Poistaaksesi 3 viimeistä merkkiä , käytä arvoa 3 num_chars :
=LEFT(A2, LEN(A2) - 3)
Poistaaksesi viimeiset 5 merkkiä , toimittaa 5 kappaletta num_chars :
=LEFT(A2, LEN(A2) - 5)
Mukautettu toiminto viimeisten n merkin poistamiseksi Excelissä
Jos haluat oman toiminnon, jolla voit poistaa oikealta minkä tahansa määrän merkkejä, lisää tämä VBA-koodi työkirjaasi:
Function RemoveLastChars(str As String , num_chars As Long ) RemoveLastChars = Left(str, Len(str) - num_chars) End FunctionFunktion nimi on RemoveLastChars ja sen syntaksia tuskin tarvitsee selittää:
RemoveLastChars(string, num_chars)Jotta sitä voidaan testata kentällä, poistamme sen viimeinen merkki A2:ssa:
=RemoveLastChars(A2, 1)
Lisäksi poistamme 2 viimeistä merkkiä merkkijonon A3 oikealta puolelta:
=RemoveLastChars(A3, 2)
Poistaaksesi 3 viimeistä merkkiä solusta A4, kaava on:
=RemoveLastChars(A4, 3)
Kuten alla olevasta kuvakaappauksesta näet, mukautettu toimintomme toimii loistavasti!
Kuinka poistaa merkkejä oikealta ja vasemmalta kerralla?
Jos haluat poistaa merkkejä merkkijonon molemmilta puolilta, voit joko suorittaa molemmat edellä mainitut kaavat peräkkäin tai optimoida työn MID-funktion avulla.
MID( merkkijono , vasen _ merkit + 1, LEN( merkkijono ) - ( vasen _ merkit + oikea _ merkit )Missä:
- chars_left - vasemmalta poistettavien merkkien määrä.
- chars_right - oikealta poistettavien merkkien määrä.
Oletetaan, että haluat poimia käyttäjätunnuksen merkkijonosta kuten mailto:[email protected] Tätä varten osa tekstistä on poistettava alusta ( mailto: - 7 merkkiä) ja lopusta ( @gmail.com - 11 merkkiä).
Syötä edellä mainitut luvut kaavaan:
=MID(A2, 7+1, LEN(A2) - (7+10))
...eikä tulos anna sinun odottaa:
Jotta ymmärtäisimme, mitä tässä oikeastaan tapahtuu, muistutetaan MID-funktion syntaksista, jota käytetään vetämään tietyn kokoinen osajono alkuperäisen merkkijonon keskeltä:
MID(teksti, alku_num, num_chars)The teksti argumentti ei herätä kysymyksiä - se on lähdejono (A2 tässä tapauksessa).
Saadaksesi ensimmäisen uutettavan merkin sijainnin ( start_num ), lisäät 1 vasemmalta poistettavien merkkien määrään (7+1).
Määrittääksesi, kuinka monta merkkiä palautetaan ( num_chars ), lasketaan poistettujen merkkien kokonaismäärä (7 + 11) ja vähennetään summa koko merkkijonon pituudesta: LEN(A2) - (7+10)).
Hae tulos numerona
Kumpaa tahansa edellä esitetyistä kaavoista käytätkin, tuloste on aina tekstiä, vaikka palautettu arvo sisältäisi vain numeroita. Jos haluat palauttaa tulos numerona , joko kääri ydinkaava VALUE-funktioon tai suorita jokin matemaattinen operaatio, joka ei vaikuta tulokseen, esimerkiksi kerro 1:llä tai lisää 0. Tämä tekniikka on erityisen hyödyllinen silloin, kun haluat laskea tuloksia edelleen.
Oletetaan, että olet poistanut ensimmäisen merkin soluista A2:A6 ja haluat laskea tuloksena saadut arvot yhteen. Hämmästyttävää kyllä, triviaali SUM-kaava palauttaa nollan. Miksi? Ilmeisesti siksi, että lasket yhteen merkkijonoja etkä numeroita. Suorita jokin alla olevista operaatioista, ja ongelma on korjattu!
=VALUE(REPLACE(A2, 1, 1, ""))
=RIGHT(A2, LEN(A2) - 1) * 1
=RemoveFirstChars(A2, 1) + 0
Poista ensimmäinen tai viimeinen merkki Flash Fillillä
Excel 2013:ssa ja sitä uudemmissa versioissa on vielä yksi helppo tapa poistaa Excelin ensimmäinen ja viimeinen merkki - Flash Fill -toiminto.
- Kirjoita haluamasi tulos alkuperäisten tietojen ensimmäisen solun vieressä olevaan soluun jättämällä ensimmäinen tai viimeinen merkki pois alkuperäisestä merkkijonosta ja paina Enter-näppäintä.
- Aloita odotetun arvon kirjoittaminen seuraavaan soluun. Jos Excel havaitsee syöttämässäsi datassa olevan mallin, se noudattaa samaa mallia muissa soluissa ja näyttää esikatselun tiedoistasi ilman ensimmäistä/viimeistä merkkiä.
- Hyväksy esikatselu painamalla Enter-näppäintä.
Poista merkit sijainnin mukaan Ultimate Suite -ohjelmalla
Perinteisesti Ultimate Suite -ohjelmistomme käyttäjät voivat hoitaa tehtävän muutamalla napsautuksella ilman, että heidän tarvitsee muistaa kourallista erilaisia kaavoja.
Jos haluat poistaa merkkijonon ensimmäiset tai viimeiset n merkkiä, sinun on tehtävä näin:
- On Ablebits Data välilehdellä, kohdassa Teksti ryhmää, napsauta Poista > Poista aseman mukaan .
Esimerkiksi ensimmäisen merkin poistamiseksi määritämme seuraavan vaihtoehdon:
Näin poistat osajonon vasemmalta tai oikealta Excelissä. Kiitän sinua lukemisesta ja odotan innolla, että tapaamme sinut blogissamme ensi viikolla!
Saatavilla olevat lataukset
Poista ensimmäiset tai viimeiset merkit - esimerkkejä (.xlsm-tiedosto)
Ultimate Suite - kokeiluversio (.exe-tiedosto)