Excel: Dizeyi sınırlayıcıya veya desene göre bölme, metin ve sayıları ayırma

  • Bunu Paylaş
Michael Brown

Bu eğitimde formüller ve Metni Böl özelliği kullanılarak Excel'de hücrelerin nasıl bölüneceği açıklanmaktadır. Metni virgül, boşluk veya başka bir sınırlayıcı ile nasıl ayıracağınızı ve dizeleri metin ve sayılara nasıl böleceğinizi öğreneceksiniz .

Bir hücredeki metni birkaç hücreye bölmek, tüm Excel kullanıcılarının arada bir uğraştığı bir görevdir. Daha önceki makalelerimizden birinde, Excel'de hücreleri bölmek için Metinden Sütuna özelliği ve Flaş Dolgu Bugün, formülleri kullanarak dizeleri nasıl bölebileceğinize derinlemesine bir göz atacağız ve Bölünmüş Metin Alet.

    Formülleri kullanarak Excel'de metin nasıl bölünür

    Excel'de dizeyi bölmek için genellikle BUL veya ARA ile birlikte SOL, SAĞ veya ORTA işlevini kullanırsınız. İlk bakışta bazı formüller karmaşık görünebilir, ancak mantık aslında oldukça basittir ve aşağıdaki örnekler size bazı ipuçları verecektir.

    Dizeyi virgül, noktalı virgül, eğik çizgi, tire veya başka bir sınırlayıcı ile bölme

    Excel'de hücreleri bölerken, anahtar, metin dizesi içindeki sınırlayıcının konumunu bulmaktır. Görevinize bağlı olarak, bu, büyük/küçük harfe duyarlı olmayan ARA veya büyük/küçük harfe duyarlı BUL kullanılarak yapılabilir. Sınırlayıcının konumunu öğrendikten sonra, metin dizesinin ilgili bölümünü çıkarmak için SAĞ, SOL veya ORTA işlevini kullanın. Daha iyi anlamak için aşağıdakileri ele alalımÖrnek.

    Diyelim ki elinizde SKU'ların bir listesi var Ürün-Renk-Boyut desenine sahip ve sütunu 3 ayrı sütuna bölmek istiyorsunuz:

    1. Ayıklamak için öğe adı (1. kısa çizgiden önceki tüm karakterler), aşağıdaki formülü B2'ye ekleyin ve ardından sütundan aşağıya kopyalayın:

      =LEFT(A2, SEARCH("-",A2,1)-1)

      Bu formülde, SEARCH dizedeki 1. kısa çizginin ("-") konumunu belirler ve LEFT işlevi ondan sonra kalan tüm karakterleri çıkarır (kısa çizginin kendisini çıkarmak istemediğiniz için kısa çizginin konumundan 1 çıkarırsınız).

    2. Ayıklamak için renk (1. ve 2. tire arasındaki tüm karakterler), aşağıdaki formülü C2'ye girin ve ardından diğer hücrelere kopyalayın:

      =MID(A2, SEARCH("-",A2) + 1, SEARCH("-",A2,SEARCH("-",A2)+1) - SEARCH("-",A2) - 1)

      Bu formülde, A2'den metin ayıklamak için Excel MID işlevini kullanıyoruz.

      Başlangıç konumu ve çıkarılacak karakter sayısı 4 farklı ARAMA fonksiyonu yardımıyla hesaplanır:

      • Başlangıç numarası ilk tire +1'in konumudur:

        SEARCH("-",A2) + 1

      • Çıkarılacak karakter sayısı : 2. kısa çizgi ile 1. kısa çizginin konumu arasındaki fark, eksi 1:

        SEARCH("-", A2, SEARCH("-",A2)+1) - SEARCH("-",A2) -1

    3. Ayıklamak için boyut (3. tire işaretinden sonraki tüm karakterler), D2'ye aşağıdaki formülü girin:

      =RIGHT(A2,LEN(A2) - SEARCH("-", A2, SEARCH("-", A2) + 1))

      Bu formülde, LEN işlevi dizenin toplam uzunluğunu döndürür ve buradan 2. tirenin konumunu çıkarırsınız. Aradaki fark, 2. tireden sonraki karakter sayısıdır ve RIGHT işlevi bunları çıkarır.

    Benzer şekilde, sütunu başka herhangi bir karakterle bölebilirsiniz. Tek yapmanız gereken "-" yerine gerekli sınırlayıcıyı koymaktır, örneğin uzay (" "), virgül (","), eğik çizgi ("/"), kolon (";"), noktalı virgül (";") ve benzeri.

    İpucu: Yukarıdaki formüllerde +1 ve -1, sınırlayıcıdaki karakter sayısına karşılık gelir. Bu örnekte, bu bir tire (1 karakter). Sınırlayıcınız virgül ve boşluk gibi 2 karakterden oluşuyorsa, SEARCH işlevine yalnızca virgül (",") girin ve +1 ve -1 yerine +2 ve -2 kullanın.

    Excel'de dize satır sonu ile nasıl bölünür

    Metni boşluğa göre bölmek için, önceki örnekte gösterilenlere benzer formüller kullanın. Tek fark, satır sonu karakterini doğrudan formüle yazamayacağınız için CHAR işlevine ihtiyaç duymanızdır.

    Bölmek istediğiniz hücrelerin buna benzediğini varsayalım:

    Önceki örnekteki formülleri alın ve kısa çizgiyi ("-") CHAR(10) ile değiştirin; burada 10, Satır besleme için ASCII kodudur.

    • Ayıklamak için öğe adı :

      =LEFT(A2, SEARCH(CHAR(10),A2,1)-1)

    • Ayıklamak için renk :

      =MID(A2, SEARCH(CHAR(10),A2) + 1, SEARCH(CHAR(10),A2,SEARCH(CHAR(10),A2)+1) - SEARCH(CHAR(10),A2) - 1)

    • Ayıklamak için boyut :

      =RIGHT(A2,LEN(A2) - SEARCH(CHAR(10), A2, SEARCH(CHAR(10), A2) + 1))

    Ve sonuç bu şekilde görünüyor:

    Excel'de metin ve sayılar nasıl bölünür?

    Öncelikle, tüm alfanümerik dizeler için çalışacak evrensel bir çözüm yoktur. Hangi formülün kullanılacağı belirli dize desenine bağlıdır. Aşağıda iki yaygın senaryo için formülleri bulacaksınız.

    'Metin + sayı' kalıbının dizesini böl

    Diyelim ki, bir sayının her zaman metni izlediği, metin ve sayıların bir arada bulunduğu bir dizeler sütununuz var. Orijinal dizeleri, metin ve sayılar ayrı hücrelerde görünecek şekilde, aşağıdaki gibi kırmak istiyorsunuz:

    Sonuç iki farklı şekilde elde edilebilir.

    Yöntem 1: Rakamları sayın ve bu kadar karakteri çıkarın

    Sayının metinden sonra geldiği metin dizesini bölmenin en kolay yolu şudur:

    için numaraları çıkar dizesini 0'dan 9'a kadar olası her sayı için arar, sayıların toplamını alır ve dizenin sonundan o kadar karakter döndürürsünüz.

    A2'deki orijinal dizeyle formül aşağıdaki gibi olur:

    =RIGHT(A2,SUM(LEN(A2) - LEN(SUBSTITUTE(A2, {"0","1","2","3","4","5","6","7","8","9"},""))))

    için metin çıkarma 'de, A2'deki orijinal dizenin toplam uzunluğundan çıkarılan basamak sayısını (C2) çıkararak dizenin kaç metin karakteri içerdiğini hesaplarsınız. Bundan sonra, dizenin başından o kadar karakter döndürmek için LEFT işlevini kullanırsınız.

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

    Burada A2 orijinal dizedir ve C2 ekran görüntüsünde gösterildiği gibi çıkarılan sayıdır:

    Yöntem 2: Bir dizideki 1. basamağın konumunu bulun

    Alternatif bir çözüm, dizideki ilk rakamın konumunu belirlemek için aşağıdaki formülü kullanmak olabilir:

    =MIN(SEARCH({0,1,2,3,4,5,6,7,8,9},A2&"0123456789"))

    İlk rakamın konumu bulunduktan sonra, çok basit SOL ve SAĞ formüllerini kullanarak metin ve sayıları bölebilirsiniz.

    Çıkarmak için Metin :

    =LEFT(A2, B2-1)

    Çıkarmak için sayı :

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

    Burada A2 orijinal dizedir ve B2 ilk sayının konumudur.

    İlk basamağın konumunu tutan yardımcı sütundan kurtulmak için, MIN formülünü LEFT ve RIGHT işlevlerine gömebilirsiniz:

    Çıkarılacak formül Metin :

    =LEFT(A2,MIN(SEARCH({0,1,2,3,4,5,6,7,8,9},A2&"0123456789"))-1)

    Çıkarılacak formül sayılar :

    =RIGHT(A2,LEN(A2)-MIN(SEARCH({0,1,2,3,4,5,6,7,8,9},A2&"0123456789"))+1)

    'Sayı + metin' kalıbının dizesini böl

    Metnin sayıdan sonra göründüğü hücreleri bölüyorsanız, şunları yapabilirsiniz numaraları çıkar aşağıdaki formülle hesaplanır:

    =LEFT(A2, SUM(LEN(A2) - LEN(SUBSTITUTE(A2, {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9"}, ""))))

    Formül, dizenin sol tarafından sayıyı almak için RIGHT yerine LEFT işlevini kullanmanız dışında önceki örnekte tartışılana benzer.

    Rakamları aldıktan sonra, özüt Metin Orijinal dizenin toplam uzunluğundan basamak sayısını çıkararak:

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

    Burada A2 orijinal dizedir ve B2 aşağıdaki ekran görüntüsünde gösterildiği gibi çıkarılan sayıdır:

    İpucu. numarasını almak için metin dizesi içinde herhangi bir konum bu formülü ya da Ayıklama aracını kullanın.

    Farklı fonksiyonların farklı kombinasyonlarını kullanarak Excel'de dizeleri bu şekilde bölebilirsiniz. Gördüğünüz gibi, formüller açık olmaktan uzaktır, bu nedenle bunları daha yakından incelemek için örnek Excel Bölünmüş Hücreler çalışma kitabını indirmek isteyebilirsiniz.

    Excel formüllerinin gizemli kıvrımlarını çözmek en sevdiğiniz iş değilse, bu eğitimin bir sonraki bölümünde gösterilen Excel'de hücreleri bölmek için görsel yöntemi beğenebilirsiniz.

    Metni Böl aracıyla Excel'de hücreler nasıl bölünür

    Excel'de bir sütunu bölmenin alternatif bir yolu, aşağıdaki seçenekleri sağlayan Ultimate Suite for Excel'de bulunan Metni Böl özelliğini kullanmaktır:

      Her şeyi daha açık hale getirmek için, her bir seçeneğe teker teker daha yakından bakalım.

      Hücreleri karaktere göre bölme

      Hücre içeriğini bölmek istediğinizde bu seçeneği seçin belirtilen karakterin her oluşumu .

      Bu örnek için, aşağıdaki dizeleri alalım Ürün-Renk-Boyut Hatırlayacağınız gibi, 3 farklı formül kullanarak bunları 3 farklı sütuna ayırmıştık. İşte aynı sonucu 2 hızlı adımda nasıl elde edebileceğiniz:

      1. Ultimate Suite'in yüklü olduğunu varsayarsak, bölünecek hücreleri seçin ve Bölünmüş Metin simgesi üzerinde Ablebits Verileri sekmesi.

      2. Bu Bölünmüş Metin bölmesi Excel pencerenizin sağ tarafında açılır ve aşağıdakileri yaparsınız:
        • Genişletin Karaktere göre bölme grubuna girin ve önceden tanımlanmış sınırlayıcılardan birini seçin veya Özel Kutu.
        • Hücrelerin sütunlara mı yoksa satırlara mı bölüneceğini seçin.
        • Altındaki sonucu gözden geçirin Önizleme bölümüne gidin ve Bölünmüş Düğme.

      İpucu: Bir hücrede birden fazla ardışık sınırlayıcı varsa (örneğin, birden fazla boşluk karakteri) Ardışık sınırlayıcıları bir olarak değerlendirin Kutu.

      Bitti! 3 formül ve 5 farklı fonksiyon gerektiren görev artık sadece birkaç saniye ve bir düğmeye tıklama gerektiriyor.

      Hücreleri dizeye göre bölme

      Bu seçenek, dizeleri aşağıdakileri kullanarak bölmenizi sağlar herhangi bir karakter kombinasyonu Teknik olarak, bir dizeyi her bir parçanın sınırı olarak bir veya birkaç farklı alt dizeyi kullanarak parçalara bölersiniz.

      Örneğin, bir cümleyi bağlaçlarla bölmek için " ve " ve " veya ", genişletin Dizelere göre bölme grubunu seçin ve her satıra bir tane olmak üzere sınırlayıcı dizeleri girin:

      Sonuç olarak, kaynak ifade her bir sınırlayıcının her oluşumunda ayrılır:

      İpucu: "veya" ve "ve" karakterleri genellikle "orange" veya "Andalusia" gibi kelimelerin bir parçası olabilir, bu nedenle uzay öncesi ve sonrası ve ve veya kelimelerin bölünmesini önlemek için.

      Ve işte bir başka gerçek hayat örneği. Harici bir kaynaktan aşağıdaki gibi görünen bir tarih sütunu içe aktardığınızı varsayalım:

      5.1.2016 12:20

      5.2.2016 14:50

      Bu biçim Excel için geleneksel değildir ve bu nedenle Tarih işlevlerinin hiçbiri tarih veya saat öğelerini tanımayacaktır. Gün, ay, yıl, saat ve dakikaları ayrı hücrelere bölmek için aşağıdaki karakterleri Dizelere göre bölme Kutu:

      • Gün, ay ve yılı ayırmak için nokta (.)
      • Saat ve dakikaları ayırmak için iki nokta üst üste (:)
      • Tarih ve saati ayırmak için boşluk

      Vur Bölünmüş düğmesine bastığınızda sonucu hemen alırsınız:

      Hücreleri maskeye (desen) göre bölme

      Bir hücreyi maskeyle ayırmak, bir dizeyi bölmek anlamına gelir bir modele dayalı .

      Bu seçenek, homojen dizelerden oluşan bir listeyi bazı öğelere veya alt dizelere bölmeniz gerektiğinde çok kullanışlıdır. Buradaki karmaşıklık, kaynak metnin belirli bir sınırlayıcının her oluşumunda bölünememesi, yalnızca belirli bazı oluşum(lar)da bölünebilmesidir. Aşağıdaki örnek işlerin daha kolay anlaşılmasını sağlayacaktır.

      Bir günlük dosyasından çıkarılmış dizelerin bir listesine sahip olduğunuzu varsayalım:

      İstediğiniz şey tarih ve saatin, varsa hata kodunun ve istisna ayrıntılarının 3 ayrı sütunda bulunmasıdır. Ayırıcı olarak boşluk kullanamazsınız çünkü tek bir sütunda görünmesi gereken tarih ve saat arasında boşluklar vardır ve yine tek bir sütunda görünmesi gereken istisna metni içinde boşluklar vardır.

      Çözüm, bir dizeyi aşağıdaki maske ile bölmektir: *HATA:* İstisna:*

      Burada yıldız işareti (*) herhangi bir sayıda karakteri temsil eder.

      İki nokta üst üste (:) işaretleri sınırlayıcılara dahil edilmiştir çünkü bunların sonuç hücrelerinde görünmesini istemiyoruz.

      Ve şimdi, genişletin Maskeye göre bölme bölümündeki Bölünmüş Metin bölmesinde, maskeyi Sınırlayıcıları girin kutusunu seçin ve Bölünmüş :

      Sonuç buna benzer görünecektir:

      Not: Dizeyi maskeye göre bölmek büyük/küçük harfe duyarlı Bu nedenle, maskedeki karakterleri tam olarak kaynak dizelerde göründükleri gibi yazdığınızdan emin olun.

      Bu yöntemin en büyük avantajı esnekliktir. Örneğin, orijinal dizelerin tümünde tarih ve saat değerleri varsa ve bunların farklı sütunlarda görünmesini istiyorsanız, bu maskeyi kullanın:

      * *ERROR:*Exception:*

      Düz İngilizceye çevrildiğinde, maske eklentiye orijinal dizeleri 4 parçaya bölme talimatı verir:

      • Dize içinde bulunan 1. boşluktan önceki tüm karakterler (tarih)
      • 1. boşluk ve kelime arasındaki karakterler HATA: (zaman)
      • Arasındaki metin HATA: ve İstisna: (hata kodu)
      • Sonrasında gelen her şey İstisna: (istisna metni)

      Umarım Excel'de dizeleri bölmenin bu hızlı ve basit yolunu beğenmişsinizdir. Denemek isterseniz, aşağıda bir değerlendirme sürümü indirilebilir. Okuduğunuz için teşekkür eder, gelecek hafta blogumuzda görüşmek dileğiyle!

      Mevcut indirmeler

      Excel Bölünmüş Hücreler formülleri (.xlsx dosyası)

      Ultimate Suite 14 günlük tam işlevli 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.