Excel'de metni ikinci boşluktan veya virgülden önce/sonra nasıl çıkarırsınız?
Excel'de metin verileriyle çalışırken, birden fazla boşluk, virgül veya başka ayırıcı içeren dizgilerle sık sık karşılaşabilirsiniz. Excel'in Metni Sütunlara Dönüştür özelliği, seçilen bir ayırıcıya göre hücre içeriğini ayrı sütunlara bölebilir; ancak bazen daha özel bir çözüme ihtiyacınız olabilir—örneğin, bir hücredeki ikinci boşluktan veya virgülden önceki veya sonraki tüm metni ayıklamak gibi. Bu makalede bunu gerçekleştirmenin birkaç pratik yöntemi açıklanmaktadır: İkinci boşluk/virgülden önce veya sonra metin hedefleyen formüller, otomasyon veya büyük veri kümeleri için sağlam VBA makrolarıyla oluşturulan çözümler ve gelişmiş veri ön işleme için esnek Power Query seçenekleri.

Formül ile ikinci boşluktan veya virgülden önce Metni Çıkart
Formül ile ikinci boşluktan veya virgülden sonra Metni Çıkart
VBA kodu ile ikinci ayırıcıdan (boşluk/virgül) önce veya sonra Metni Çıkart
Formül ile ikinci boşluktan veya virgülden önce Metni Çıkart
Bir hücrenin ikinci boşluktan önce görünen kısmını ayırmak istiyorsanız, Excel işlevlerinin bir kombinasyonundan yararlanabilirsiniz.
1. Sonucu görüntülemek istediğiniz boş bir hücreye (örneğin,)C2 hücresine) aşağıdaki formülü girin:
=IF(ISERROR(FIND(" ",A2,FIND(" ",A2,1)+1)),A2,LEFT(A2,FIND(" ",A2,FIND(" ",A2,1)+1))) 2.Enter tuşuna basın. Ardından, işlemek istediğiniz tüm satırlar için formülü aşağı doğru doldurma tutamacıyla sürükleyin. Sonuç, her ilgili satırda ikinci boşluktan önceki tüm metni gösterecektir—aşağıdaki ekran görüntüsüne bakın:

İpucu:Metni ikinci virgülden veya başka bir ayırıcıdan önce çıkarmak istiyorsanız, formüldeki boşluk karakterini ()" ") istediğiniz ayırıcıyla değiştirin. Örneğin, virgül için:
=IF(ISERROR(FIND(",",A2,FIND(",",A2,1)+1)),A2,LEFT(A2,FIND(",",A2,FIND(",",A2,1)+1))) Bu yaklaşım, tek seferlik ayıklamalar veya orta büyüklükteki veri kümeleriyle çalışırken hızlı ve verimlidir. Ancak metin çok düzensizse veya satırlar arasında ayırıcı sayısı büyük ölçüde değişiyorsa, ek formül ayarlamaları gerekebilir. Ayrıca, fazladan boşluklara veya Boş hücreler dikkat edin; bunlar sonuçları etkileyebilir. Kritik verilere uygularken çıktıyı her zaman iki kez kontrol edin.

KUTOOLS AI ile Excel'in Sihirli Gücünü Açığa Çıkarın
- Akıllı Yürütme: Hücre işlemlerini gerçekleştirin, verileri analiz edin ve hepsi basit komutlarla çalışan grafikler oluşturun.
- Özel formüller: İş akışlarınızı kolaylaştırmak için özelleştirilmiş formüller oluşturun.
- VBA Kodlama: VBA kodlarını zahmetsizce yazın ve uygulayın.
- Formül Yorumlama: Karmaşık formülleri kolayca çözmek artık çok daha basit!
- Metin Çevirisi: Elektronik tablolarınızda dil bariyerlerini aşın.
Formül ile ikinci boşluktan veya virgülden sonra Metni Çıkart
Bir hücredeki ikinci boşluk ayırıcısından sonra görünen metni çıkarmak için MID ve BUL işlevlerini birlikte kullanabilirsiniz.
1. Hedef hücreye (örneğin D2 hücresine) aşağıdaki formülü girin:
=MID(A2, FIND(" ", A2, FIND(" ", A2)+1)+1,256) 2. Enter tuşuna basın. Ayıklanması gereken tüm satırlar boyunca doldurma tutamacını aşağı doğru sürükleyin. Bu işlem, her satırda ikinci boşluktan sonraki tüm metni gösterecektir; ekran görüntüsünde gösterildiği gibidir:

İpucu: Metni ikinci virgülden veya başka bir ayırıcıdan sonra ayırmak için, formüldeki boşluk karakterini istediğiniz ayırıcıyla değiştirin. Virgül kullanmak için formül şöyle olur:
=MID(A2, FIND(",", A2, FIND(",", A2)+1)+1,256) VBA kodu ile ikinci ayırıcıdan (boşluk/virgül) önce veya sonra Metni Çıkart
Daha büyük veri kümeleri, tekrarlayan ayıklama işlemleri veya otomasyon senaryoları için VBA makrosu kullanmak etkili bir çözümdür. VBA, metni ikinci boşluktan, virgülden veya başka bir ayırıcıdan önce ya da sonra çıkarmanıza olanak tanıyarak farklı veri yapılarıyla çalışırken veya tekrarlanabilir bir rutine ihtiyaç duyduğunuzda verimliliği artırır.
1. Geliştirici > Visual Basic öğesini seçin. Açılan Microsoft Visual Basic for Applications penceresinde, Ekle > Modül seçeneğine tıklayın ve aşağıdaki kodu modül penceresine girin:
Sub ExtractTextSecondDelimiter()
Dim rng As Range
Dim cell As Range
Dim sep As String
Dim direction As String
Dim arr As Variant
Dim result As String
Dim pos1 As Long
Dim pos2 As Long
Dim xTitleId As String
Dim outputCell As Range
Dim i As Long
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set rng = Application.Selection
Set rng = Application.InputBox("Select text range to extract from", xTitleId, rng.Address, Type:=8)
If rng Is Nothing Then Exit Sub
sep = Application.InputBox("Enter delimiter (e.g. space or comma)", xTitleId, " ", Type:=2)
If sep = "" Then Exit Sub
direction = Application.InputBox("Type 'before' for text before, 'after' for text after the 2nd delimiter", xTitleId, "before", Type:=2)
If direction = "" Then Exit Sub
Set outputCell = Application.InputBox("Select the first cell to output the result", xTitleId, Type:=8)
If outputCell Is Nothing Then Exit Sub
Application.ScreenUpdating = False
i = 0
For Each cell In rng
If Not IsEmpty(cell.Value) Then
pos1 = InStr(1, cell.Value, sep)
If pos1 > 0 Then
pos2 = InStr(pos1 + 1, cell.Value, sep)
If pos2 > 0 Then
If LCase(direction) = "before" Then
result = Left(cell.Value, pos2 - 1)
ElseIf LCase(direction) = "after" Then
result = Mid(cell.Value, pos2 + Len(sep))
Else
result = cell.Value
End If
Else
result = cell.Value
End If
Else
result = cell.Value
End If
outputCell.Offset(i, 0).Value = result
End If
i = i + 1
Next
Application.ScreenUpdating = True
MsgBox "Extraction completed.", vbInformation, xTitleId
End Sub
2. Kodu yapıştırdıktan sonra
Çalıştır düğmesine tıklayın veya çalıştırmak için F5 tuşuna basın. Karşınıza çıkan iletişim kutusu, önce bir veri aralığı seçmenizi, ardından bir ayırıcı girmenizi, ikinci oluşumdan “önce” mi yoksa “sonra” mı silinmesini istediğinizi belirtmenizi ve son olarak sonucun yazdırılacağı hedef bir hücre seçmenizi isteyecektir. Makro, çıkarılan sonucu belirttiğiniz hücreye yerleştirecektir.
En İyi Office Üretkenlik Araçları
Excel becerilerinizi Kutools for Excel ile geliştirin ve verimlilikte hiç yaşamadığınız bir deneyim yaşayın.Kutools for Excel, üretkenliği artırmak ve Zamanı Kaydet için 300’den fazla gelişmiş özelliğe sahiptir.İhtiyacınız olan özelliği hemen edinmek için buraya tıklayın…
Office Tab, Office uygulamalarına sekmeli bir arayüz kazandırarak işlerinizi çok daha kolay hale getirir.
- Word, Excel, PowerPoint, Publisher, Access, Visio ve Project'te sekmeli düzenleme ve okuma özelliğini etkinleştirin.
- Belgeleri yeni pencerelerde değil, aynı pencerenin yeni sekmelerinde açıp oluşturun.
- Günlük üretkenliğinizi %50 artırır ve her gün yüzlerce fare tıklamasından tasarruf etmenizi sağlar!
Tüm Kutools eklentileri — tek bir kurulum dosyasında!
Kutools for Office paketi, Excel, Word, Outlook ve PowerPoint eklentilerini ve ayrıca Office Tab Pro’yu içeren kapsamlı bir çözümdür; Office uygulamalarında çalışan ekipler için idealdir.
- Hepsi bir arada paket— Excel, Word, Outlook ve PowerPoint eklentileri + Office Tab Pro
- Tek kurulum, tek lisans— birkaç dakikada hazır (MSI uyumlu)
- Birlikte daha iyi çalışır— Office uygulamalarında akıcı üretkenlik
- 30 günlük tam özellikli deneme— kayıt gerekmez, kredi kartı gerekmez
- En iyi fiyat performans— ayrı ayrı eklenti satın almaya göre tasarruf sağlar