Excel: İlk veya son karakterleri kaldırın (soldan veya sağdan)

  • Bunu Paylaş
Michael Brown

Çalışma sayfalarınızda yapılandırılmamış metin verileriyle çalışırken, ilgili bilgileri almak için genellikle bunları ayrıştırmanız gerekir. Bu makale size bir metin dizesinin sol veya sağ tarafından istediğiniz sayıda karakteri kaldırmanın birkaç basit yolunu öğretecektir.

    Excel'de soldan karakterler nasıl kaldırılır

    Bir dizeden ilk karakterleri kaldırmak Excel'deki en yaygın görevlerden biridir ve 3 farklı formülle gerçekleştirilebilir.

    Excel'de ilk karakteri kaldırma

    Bir dizeden ilk karakteri silmek için, REPLACE işlevini ya da RIGHT ve LEN işlevlerinin bir kombinasyonunu kullanabilirsiniz.

    REPLACE( Dize , 1, 1, "")

    Burada, sadece ilk konumdan 1 karakter alıyoruz ve onu boş bir dizeyle ("") değiştiriyoruz.

    DOĞRU( Dize , LEN( Dize ) - 1)

    Bu formülde, dizenin toplam uzunluğunu hesaplamak ve bundan 1 karakter çıkarmak için LEN işlevini kullanırız. Aradaki fark RIGHT'a servis edilir, böylece dizenin sonundan o kadar karakter çıkarılır.

    Örneğin, A2 hücresinden ilk karakteri kaldırmak için formüller aşağıdaki gibi olur:

    =REPLACE(A2, 1, 1, "")

    =RIGHT(A2, LEN(A2) - 1)

    Soldan karakterleri kaldır

    Bir dizenin sol tarafındaki baştaki karakterleri kaldırmak için REPLACE veya RIGHT ve LEN işlevlerini de kullanırsınız, ancak her seferinde kaç karakter silmek istediğinizi belirtirsiniz:

    REPLACE( Dize , 1, num_chars , "")

    Ya da

    DOĞRU( Dize , LEN( Dize ) - num_chars )

    Örneğin, kaldırmak için ilk 2 karakter A2'deki dizeden, formüller şunlardır:

    =REPLACE(A2, 1, 2, "")

    =RIGHT(A2, LEN(A2) - 2)

    Kaldırmak için ilk 3 karakterler formülleri bu şekli alır:

    =REPLACE(A2, 1, 3, "")

    =RIGHT(A2, LEN(A2) - 3)

    Aşağıdaki ekran görüntüsü REPLACE formülünü iş başında göstermektedir. RIGHT LEN ile sonuçlar tamamen aynı olacaktır.

    İlk n karakteri silmek için özel işlev

    Çalışma sayfalarınızda VBA kullanmaktan çekinmiyorsanız, bir dizenin başındaki karakterleri silmek için kendi kullanıcı tanımlı işlevinizi oluşturabilirsiniz RemoveFirstChars Fonksiyonun kodu bu kadar basittir:

    Function RemoveFirstChars(str As String , num_chars As Long ) RemoveFirstChars = Right(str, Len(str) - num_chars) End Function

    Kod çalışma kitabınıza eklendikten sonra (ayrıntılı talimatlar burada), bu kompakt ve sezgisel formülü kullanarak belirli bir hücreden ilk n karakteri kaldırabilirsiniz:

    RemoveFirstChars(string, num_chars)

    Örneğin, silmek için önce karakterini A2'deki bir dizeden alırsanız, B2'deki formül

    =RemoveFirstChars(A2, 1)

    Soymak için ilk iki A3'teki karakterler, B3'teki formüldür:

    =RemoveFirstChars(A4, 2)

    Silmek için ilk üç A4'teki karakterler, B4'teki formüldür:

    =RemoveFirstChars(A4, 3)

    Excel'de özel işlevleri kullanma hakkında daha fazla bilgi.

    Karakterler sağdan nasıl kaldırılır

    Bir dizenin sağ tarafındaki karakterleri kaldırmak için yerel işlevleri de kullanabilir veya kendi işlevinizi oluşturabilirsiniz.

    Excel'de son karakteri kaldırma

    Bir hücredeki son karakteri silmek için genel formül şöyledir:

    SOL( Dize , LEN( Dize ) - 1)

    Bu formülde, toplam dize uzunluğundan 1'i çıkarırsınız ve dizenin başından o kadar karakter çıkarması için farkı LEFT işlevine aktarırsınız.

    Örneğin, A2 hücresinden son karakteri çıkarmak için B2'deki formül şöyledir:

    =LEFT(A2, LEN(A2) - 1)

    Sağdaki karakterleri kaldırın

    Bir hücrenin sonundan belirli sayıda karakteri çıkarmak için genel formül şöyledir:

    SOL( Dize , LEN( Dize ) - num_chars )

    Mantık yukarıdaki formülle aynıdır ve aşağıda birkaç örnek verilmiştir.

    Çıkarmak için son 3 karakter için 3 kullanın num_chars :

    =LEFT(A2, LEN(A2) - 3)

    Silmek için son 5 karakter için 5 tedarik num_chars :

    =LEFT(A2, LEN(A2) - 5)

    Excel'de son n karakteri kaldırmak için özel işlev

    Sağdan istediğiniz sayıda karakteri kaldırmak için kendi işlevinize sahip olmak istiyorsanız, bu VBA kodunu çalışma kitabınıza ekleyin:

    Function RemoveLastChars(str As String , num_chars As Long ) RemoveLastChars = Left(str, Len(str) - num_chars) End Function

    Fonksiyonun adı RemoveLastChars ve sözdizimi neredeyse hiç açıklama gerektirmez:

    RemoveLastChars(string, num_chars)

    Bir saha testi yapmak için son karakter A2'de:

    =RemoveLastChars(A2, 1)

    Ek olarak, aşağıdaki son 2 karakter A3'teki dizenin sağ tarafından:

    =RemoveLastChars(A3, 2)

    Silmek için son 3 karakter A4 hücresinden, formül şöyledir:

    =RemoveLastChars(A4, 3)

    Aşağıdaki ekran görüntüsünde de görebileceğiniz gibi, özel fonksiyonumuz mükemmel bir şekilde çalışıyor!

    Karakterleri sağdan ve soldan aynı anda kaldırma

    Bir dizenin her iki tarafındaki karakterleri silmeniz gerektiğinde, yukarıdaki formüllerin her ikisini de sırayla çalıştırabilir veya MID işlevi yardımıyla işi optimize edebilirsiniz.

    MID( Dize , Sol _ karakterler + 1, LEN( Dize ) - ( Sol _ karakterler + doğru _ karakterler )

    Nerede?

    • chars_left - soldan silinecek karakter sayısı.
    • chars_right - sağdan silinecek karakter sayısı.

    Kullanıcı adını aşağıdaki gibi bir dizeden çıkarmak istediğinizi varsayalım mailto:[email protected] Bunun için metnin bir kısmının baştan çıkarılması gerekmektedir ( mailto: - 7 karakter) ve sondan ( @gmail.com - 11 karakter).

    Yukarıdaki sayıları formüle ekleyin:

    =MID(A2, 7+1, LEN(A2) - (7+10))

    ...ve sonuç sizi bekletmeyecektir:

    Burada gerçekte neler olduğunu anlamak için, orijinal dizenin ortasından belirli bir boyutta bir alt dize çekmek için kullanılan MID işlevinin sözdizimini hatırlayalım:

    MID(text, start_num, num_chars)

    Bu Metin argümanı herhangi bir soruyu gündeme getirmez - bu kaynak dizedir (bizim durumumuzda A2).

    Çıkarılacak ilk karakterin konumunu almak için ( start_num ), soldan çıkarılacak karakter sayısına 1 eklersiniz (7+1).

    Kaç karakter döndürüleceğini belirlemek için ( num_chars ), kaldırılan karakterlerin toplamını (7 + 11) hesaplar ve toplamı tüm dizenin uzunluğundan çıkarırsınız: LEN(A2) - (7+10)).

    Sonucu sayı olarak alın

    Yukarıdaki formüllerden hangisini kullanırsanız kullanın, döndürülen değer yalnızca sayılar içerse bile çıktı her zaman metindir. sayı olarak sonuç temel formülü VALUE işlevine sarın ya da sonucu etkilemeyen bir matematik işlemi gerçekleştirin, örneğin 1 ile çarpın veya 0 ekleyin. Bu teknik özellikle sonuçları daha fazla hesaplamak istediğinizde kullanışlıdır.

    A2:A6 hücrelerinden ilk karakteri kaldırdığınızı ve ortaya çıkan değerleri toplamak istediğinizi varsayalım. Şaşırtıcı bir şekilde, önemsiz bir TOPLA formülü sıfır döndürür. Neden mi? Açıkçası, sayıları değil dizeleri topladığınız için. Aşağıdaki işlemlerden birini gerçekleştirdiğinizde sorun çözülür!

    =DEĞER(REPLACE(A2, 1, 1, ""))

    =RIGHT(A2, LEN(A2) - 1) * 1

    =RemoveFirstChars(A2, 1) + 0

    Flash Fill ile ilk veya son karakteri kaldırın

    Excel 2013 ve sonraki sürümlerde, Excel'deki ilk ve son karakterleri silmenin kolay bir yolu daha vardır - Flaş Doldurma özelliği.

    1. Orijinal verilerin bulunduğu ilk hücreye bitişik bir hücreye, orijinal dizeden ilk veya son karakteri çıkararak istediğiniz sonucu yazın ve Enter tuşuna basın.
    2. Bir sonraki hücreye beklenen değeri yazmaya başlayın. Excel girdiğiniz verideki deseni algılarsa, hücrelerin geri kalanında aynı deseni izleyecek ve ilk / son karakter olmadan verilerinizin bir önizlemesini görüntüleyecektir.
    3. Önizlemeyi kabul etmek için Enter tuşuna basmanız yeterlidir.

    Ultimate Suite ile karakterleri konuma göre kaldırın

    Geleneksel olarak, Ultimate Suite'imizin kullanıcıları, bir avuç dolusu çeşitli formülü hatırlamak zorunda kalmadan birkaç tıklama ile bu görevi yerine getirebilir.

    Bir dizeden ilk veya son n karakteri silmek için yapmanız gereken şey budur:

    1. Üzerinde Ablebits Verileri sekmesinde Metin grubunu seçin, tıklayın Kaldırmak > Pozisyona Göre Kaldır .

  • Eklentinin bölmesinde, hedef aralığı seçin, kaç karakter silineceğini belirtin ve Kaldırmak .
  • Örneğin, ilk karakteri kaldırmak için aşağıdaki seçeneği yapılandırıyoruz:

    Excel'de bir alt dizeyi soldan veya sağdan nasıl kaldıracağınızı anlattım. Okuduğunuz için teşekkür ediyor ve gelecek hafta sizi blogumuzda görmeyi dört gözle bekliyorum!

    Mevcut indirmeler

    İlk veya son karakterleri kaldırın - örnekler (.xlsm dosyası)

    Ultimate Suite - deneme sürümü (.exe dosyası)

    Michael Brown, yazılım araçlarını kullanarak karmaşık süreçleri basitleştirme tutkusuna sahip, kendini adamış bir teknoloji meraklısıdır. Teknoloji endüstrisinde on yılı aşkın deneyimiyle Microsoft Excel ve Outlook'un yanı sıra Google E-Tablolar ve Dokümanlar'daki becerilerini geliştirdi. Michael'ın blogu, bilgisini ve uzmanlığını başkalarıyla paylaşmaya, üretkenliği ve verimliliği artırmaya yönelik takip etmesi kolay ipuçları ve eğitimler sağlamaya adamıştır. İster deneyimli bir profesyonel, ister yeni başlayan olun, Michael'ın blogu, bu temel yazılım araçlarından en iyi şekilde yararlanmak için değerli bilgiler ve pratik tavsiyeler sunar.