KutoolsforOffice — Tek çözüm, beş güçlü araç.Daha az çabayla daha fazlasını başarmak.

Excel Hücrelerinde Her X Karakterden Sonra Karakter Ekleme – Kolay Yöntemler

YazarXiaoyang Değiştirme Tarihi

Excel'de ürün kodları, seri numaraları, telefon numaraları, kimlik numaraları veya uzun metin dizeleri üzerinde çalışırken, belirli bir karakter sayısından sonra her seferinde aynı ayırıcı karakteri eklemeniz gerekebilir. Örneğin, ABCDEF123456’yı ABC-DEF-123-456 biçimine dönüştürmek ya da uzun sayıları daha okunabilir hale getirmek için her 4 haneye bir boşluk eklemek isteyebilirsiniz.
Excel bu işlem için doğrudan yerleşik bir düğme sunmaz, ancak birkaç kolay yöntemle bunu zahmetsizce gerçekleştirebilirsiniz. Bu makalede, Excel hücrelerinde her X karakterden sonra belirli bir karakter eklemek için kullanabileceğiniz pratik yolları sizinle paylaşacağız.

X Karakterde Bir Karakter Ekle

Excel'de Her X Karakterden Sonra Karakter Ekleme

Önemli Notlar ve Sınırlamalar

Sonuç


Excel'de Her X Karakterden Sonra Karakter Ekleme

Aşağıdaki yöntemler, Excel’de her belirtilen karakter sayısından sonra belirli karakterleri hızlıca eklemenizi sağlayarak uzun metinleri, kimlikleri, ürün kodlarını veya sayı dizelerini sabit aralıklarla kolayca ayırmanıza ve içeriği daha standart, okunaklı hale getirmenize olanak tanır.

 

Yöntem 1: Formül ile Her X Karakterden Sonra Karakter Ekleme

Excel 365 veya Excel 2021 kullanıyorsanız, metni sabit uzunluktaki gruplara bölmek ve ardından belirtilen bir karakterle birleştirmek için dinamik dizi formülünden yararlanabilirsiniz.

Boş bir hücreye aşağıdaki formülü girin:

=TEXTJOIN("-",TRUE,MID(A2,SEQUENCE(ROUNDUP(LEN(A2)/4,0),,1,4),4))

Ardından Enter tuşuna basın. Formülü diğer hücrelere doldurmak için doldurma tutamacını aşağı doğru sürükleyin.
Formül ile Her X Karakterde Bir Karakter Ekle

Bu formül nasıl çalışıyor?

  • LEN(A2): A2 hücresindeki toplam karakter sayısını verir.
  • ROUNDUP(LEN(A2)/4,0): Gerekli grup sayısını hesaplar. Son grupta 4’ten az karakter olsa bile dahil edilir.
  • SEQUENCE(ROUNDUP(LEN(A2)/4,0),,1,4): Başlangıç konumlarını oluşturur: 1, 5, 9, 13 vb.
  • MID(A2,SEQUENCE(…),4): Metinden her 4 karakterlik grubu çıkarır.
  • TEXTJOIN("-",TRUE,…): Çıkarılan tüm grupları tireyle birleştirir.

Formülü özelleştirme

Karakteri ve aralığı ihtiyacınıza göre özelleştirebilirsiniz.

Her 4 karakterde bir boşluk ekleyin:

=TEXTJOIN(" ",TRUE,MID(A2,SEQUENCE(ROUNDUP(LEN(A2)/4,0),,1,4),4))

Her 2 karakterde bir eğik çizgi ekleyin:

=TEXTJOIN("/",TRUE,MID(A2,SEQUENCE(ROUNDUP(LEN(A2)/2,0),,1,2),2))

Esnek ayarlar için hücre referanslarını kullanın: (Bu sürüm daha esnektir çünkü eklenen karakteri veya aralık sayısını formülü düzenlemeksizin değiştirebilirsiniz.)

Eğer:

  • Orijinal Metin A2 hücresindedir,
  • Eklenecek karakter B1 hücresindedir,
  • Aralık sayısı C1 hücresindedir
=TEXTJOIN($B$1,TRUE,MID(A2,SEQUENCE(ROUNDUP(LEN(A2)/$C$1,0),,1,$C$1),$C$1))

Avantajlar ve dezavantajlar

AvantajlarDezavantajlar
Otomatik olarak güncellenen dinamik sonuçYalnızca Excel 365, Excel 2021 ve sonraki sürümlerde çalışır
VBA gerekmezFormül, yeni başlayanlar için zor olabilir
Birden fazla hücreye aşağı kopyalaması kolaydırSonuç formül tabanlıdır, statik metin değildir
 

Yöntem 2: VBA kodu ile Her X Karakterden Sonra Karakter Ekleme

Birden fazla hücrede, her sabit karakter sayısından sonra belirli bir karakter ekleyip sonucu doğrudan almak istiyorsanız VBA harika bir seçenektir.

  1. Excel'de ALT + F11 tuşlarına basılı tutun; Microsoft Visual Basic for Applications penceresi açılacaktır.
  2. Ekle > Modül’e tıklayın ve aşağıdaki kodu Modül Penceresine yapıştırın.
Sub InsertCharacter()
'Updateby Extendoffice
Dim Rng As Range
Dim InputRng As Range, OutRng As Range
Dim xRow As Integer
Dim xChar As String
Dim index As Integer
Dim arr As Variant
Dim xValue As String
Dim outValue As String
Dim xNum As Integer
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
xRow = Application.InputBox("Number of characters :", xTitleId, Type:=1)
xChar = Application.InputBox("Specify a character :", xTitleId, Type:=2)
Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
Set OutRng = OutRng.Range("A1")
xNum = 1
For Each Rng In InputRng
    xValue = Rng.Value
    outValue = ""
    For index = 1 To VBA.Len(xValue)
        If index Mod xRow = 0 And index <> VBA.Len(xValue) Then
            outValue = outValue + VBA.Mid(xValue, index, 1) + xChar
        Else
            outValue = outValue + VBA.Mid(xValue, index, 1)
        End If
    Next
    OutRng.Cells(xNum, 1).Value = outValue
    xNum = xNum + 1
Next
End Sub
  1. Bu kodu çalıştırmak için F5 tuşuna basın. Metin dizelerine belirli bir karakter eklemek istediğiniz Veri Aralığı’nı seçmenizi isteyen bir iletişim kutusu görünecektir. Aşağıdaki ekran görüntüsüne göz atın:
    Veri aralığını seçin
  2. Ardından Tamamdüğmesine tıklayın; aşağıdaki iletişim kutusunda, belirli karakteri her kaç karakterden sonra eklemek istediğinizi girin, ekran görüntüsüne bakın:
    Karakter sayısını girin
  3. Devam etmek için Tamamdüğmesine tıklayın; ardından gelen iletişim kutusunda, metne eklemek istediğiniz belirli karakteri girin, ekran görüntüsüne bakın:
    Bir karakter belirtin
  4. Tıklayın Tamamdüğmesine ve sonuçların çıktısını almak istediğiniz hücreyi iletişim kutusundan seçin, ekran görüntüsüne bakın:
    Çıktı hücresini seçin
  5. Son olarak, Tamam düğmesine tıklayın. Excel, belirtilen karakteri her X karakterden sonra ekleyecek ve sonuçları seçilen Liste Yerleştirme Alanı’na yerleştirecektir.
    VBA kodu ile Her X Karakterde Bir Karakter Ekleyin

Avantajlar ve dezavantajlar

AvantajlarDezavantajlar
Eski Excel sürümlerinde çalışırMakroların etkinleştirilmesini gerektirir
Aynı anda birçok hücreyi işleyebilirVBA, yeni başlayanlar için zor olabilir
Doğrudan statik sonuçlar üretirKaynak Veri değişirse dinamik değildir
Esnek karakter ve aralık ayarlarıMakro dosyaları .xlsm olarak kaydedilmelidir
 

Yöntem 3: Kullanıcı Tanımlı İşlev ile Her X Karakterden Sonra Karakter Ekleme

Kullanıcı Tanımlı İşlev (UDF), VBA ile kendi Excel işlevinizi oluşturmanızı sağlar. İşlevi ekledikten sonra, onu normal bir çalışma sayfası formülü gibi kullanabilirsiniz.

  1. VBA düzenleyicisini açmak için Alt + F11 tuşlarına basın.
  2. Ekle > Modül seçeneğine tıklayın. Aşağıdaki kodu modüle kopyalayıp yapıştırın.
Function InsertEveryX(TextStr As String, InsertChar As String, IntervalNum As Long) As String
    Dim i As Long
    Dim ResultStr As String
    If IntervalNum <= 0 Then
        InsertEveryX = TextStr
        Exit Function
    End If
    For i = 1 To Len(TextStr) Step IntervalNum
        ResultStr = ResultStr & Mid(TextStr, i, IntervalNum) & InsertChar
    Next i
    If Len(ResultStr) > 0 Then
        ResultStr = Left(ResultStr, Len(ResultStr) - Len(InsertChar))
    End If
    InsertEveryX = ResultStr
End Function
  1. VBA düzenleyicisini kapatın ve çalışma sayfasına dönün. Aşağıdaki formülü kullanın:
=InsertEveryX(A2,"-",4)

İpucu: Eklenen karakteri ve aralık sayısını hücrelerde de saklayabilirsiniz.

Ardından formülü diğer hücrelere uygulamak için doldurma tutamacını aşağıya doğru sürükleyin.
UDF ile Her X Karakterde Bir Karakter Ekleyin

Avantajlar ve dezavantajlar

AvantajlarDezavantajlar
Normal bir Excel formülü gibi çalışırVBA kurulumu gerektirir
Karmaşık bir formülden daha okunaklıdırMakroların etkinleştirilmesi gerekir
Çalışma kitabında yeniden kullanılabilirdirKopyalanmadıkça diğer çalışma kitaplarında kullanılamaz
Özel karakterler ve aralıkları desteklerÇalışma kitabı .xlsm olarak kaydedilmelidir
 

Yöntem 4: Kutools for Excel ile Her X Karakterden Sonra Karakter Ekleme

Karmaşık formüller veya VBA kodu kullanmak istemiyorsanız, Kutools for Excel hücre metnine karakter eklemek için çok daha kolay bir çözüm sunar. Metin Araçları ile belirli karakterleri sabit konumlara hızla ekleyebilir ya da metin işleme işlemlerini birden fazla hücreye aynı anda uygulayabilirsiniz.

  1. Karakter eklemek istediğiniz hücreleri seçin. Ardından Kutools > Metin > Metin Ekle menüsünü tıklayın.
    Metin ekle özelliğini seçin
  2. Metin Ekleiletişim kutusunda:
    1. Eklenecek karakteri girin; örneğin -, / veya boşluk karakterini Metin kutusuna girin.
    2. Altında Ekleme Konumu bölümünde, Belirtilen konumdan sonra seçeneğini belirleyin ve karakterin eklenmesi gereken konumları girin.
    3. Tamam’a tıklayın.
      İletişim kutusunda seçenekleri ayarlayın

İpucu: Bu örnekte, 4, 8, 12 değerlerini Belirtilen konumdan sonra kutusuna girdim; bu da her metin dizesinin 4., 8. ve 12. karakterlerinden sonra belirli metnin ekleneceği anlamına gelir.

Artık belirtilen karakter, hücre değerlerine belirtilen aralıklarla eklenmiştir.

Kutools ile Excel Hücrelerine Metin Ekleme İşlemini Hızlandırın

Kutools for Excel’in Metin Ekle özelliğiyle, karmaşık formüller veya VBA kodu yazmadan seçili hücrelere belirli karakterler, semboller ya da metin ekleyebilirsiniz.

Formül veya VBA gerekmezKarmaşık formüller oluşturmak yerine basit ayarlarla metin ekleyin.
Toplu işlemAynı ekleme kuralını birden çok hücreye aynı anda uygulayın.
Esnek konumlarBaşta, sonda veya belirtilen karakter konumlarında Metin Ekle.
Yeni başlayanlara uygunGörsel bir iletişim kutusu, metin biçimlendirmeyi daha kolay ve verimli hale getirir.

Önemli Notlar ve Sınırlamalar

1. Formül sonuçları dinamiktir

Formül yöntemini kullanırsanız, Orijinal Metin değiştiğinde sonuç otomatik olarak güncellenir. Bu, sürekli güncellenen çalışma sayfaları için yararlıdır ancak sonuç yine de formül tabanlıdır.

Sabit metin değerlerine ihtiyacınız varsa, formül sonuçlarını kopyalayın ve şu işlemi uygulayın:Giriş>Yapıştır>Değerleri Yapıştır

2. VBA ve Kutools genellikle statik sonuç verir

VBA ve Kutools, tek seferlik işlemler için daha uygundur. Karakterler eklendikten sonra, kaynak metin değiştiğinde sonuç otomatik olarak güncellenmez; kodu veya aracı tekrar çalıştırmadığınız sürece bu durum böyle kalır.

3. Son grubun daha kısa olup olmadığını kontrol edin

Metin uzunluğu aralık sayısına tam bölünmüyorsa, son grup kalan karakterleri içerir.

4. Boş hücreler

Aralık seçimi boş hücreler içerdiğinde, VBA ve Kutools bunları genellikle otomatik olarak atlar veya olduğu gibi bırakır. Ancak formüller kullanıyorsanız, boş hücreler beklenmeyen sonuçlara veya hatalara yol açabilir. Bunu önlemek için formülünüzü, boş hücreleri boş bırakacak şekilde IF veya IFERROR fonksiyonlarıyla sarmalayabilirsiniz.

=IF(A2="","",TEXTJOIN("-",TRUE,MID(A2,SEQUENCE(ROUNDUP(LEN(A2)/4,0),,1,4),4)))

5. Özel karakterler

Virgül, tire, boşluk, eğik çizgi ve nokta gibi en yaygın ayırıcılar sorunsuzca eklenebilir; ayrıca diğer özel metinleri de kullanabilirsiniz.


Sonuç

Excel'de her X karakterden sonra bir karakter eklemek, uzun metin dizelerini daha okunaklı, biçimlendirilebilir ve yönetilebilir hale getirir. Excel 365 veya Excel 2021 kullanıcıları için formül yöntemi esnek ve dinamik bir çözümdür. Aynı anda birçok hücreyi işlemek gerekiyorsa, görevi verimli şekilde tamamlamanıza VBA yardımcı olabilir. Yeniden kullanılabilir özel bir formüle ihtiyacınız varsa, Kullanıcı Tanımlı Bir İşlev (UDF) mükemmel bir seçimdir. Basit, görsel ve kod gerektirmeyen bir yöntem arayan kullanıcılar ise bu tür metin biçimlendirme görevlerini çok daha hızlı gerçekleştirmek için Kutools for Excel'i tercih edebilir.

Genel olarak, dinamik sonuçlar için formüller kullanın; daha fazla kontrole ihtiyacınız olduğunda VBA veya UDF’leri tercih edin; en kolay iş akışını ve daha az manuel adım arıyorsanız Kutools’u seçin.