Genel Bakış
Metni Sütunlara Dönüştür (Text to Columns), bir sütundaki hücre metinlerini virgül, noktalı virgül, boşluk gibi bir ayraca ya da sabit karakter genişliğine göre parçalara ayırıp yan yana sütunlara yazan Excel komutudur. Başka sistemlerden alınan ya da tek hücrede birleşik gelen verileri (ad soyad, adres, kod listeleri, CSV satırları) düzenlemek için kullanılır. Komut, sihirbaz penceresiyle üç adımda çalışır ve sonucu formül değil, doğrudan değer olarak yazar.
Şeritte Alt tuşuna basarak ekranda beliren tuş ipuçlarıyla da komuta klavyeden ulaşabilirsiniz; ipuçlarındaki harfler Excel'in dil sürümüne göre değişir.
Üçüncü adımdaki sütun biçimi seçimi sonucu doğrudan etkiler:
Komut sonucu sabit değer yazar; kaynak veri değişince sonuç güncellenmez. Güncel kalmasını istiyorsanız bölme işini formülle yapabilirsiniz. Örneğin virgülden önceki ilk parçayı almak için:
Her kayıt üç parçaya bölünerek B, C ve D sütunlarına yazıldı; ilk kayıtta B2 hücresi Ayşe, C2 hücresi Yılmaz, D2 hücresi İzmir değerini aldı. Özgün A sütunu değişmeden kaldı, çünkü sonuç Hedef kutusuyla yan sütunlara yönlendirildi.
Stok kodu B sütununa metin olarak yazıldığı için ilk kayıtta 00125 değeri sıfırlarıyla korundu. Ürün adı C2 hücresinde Kalem, adet ise D2 hücresinde 24 olarak sayıya çevrildi; Genel biçim sayıları otomatik tanır, Metin biçimi ise değeri olduğu gibi bırakır.
Her kaydın ilk iki karakteri B sütununa, kalanı C sütununa yazıldı. Örneğin A3 hücresindeki kayıt için B3 hücresi 06, C3 hücresi Ankara değerini aldı. Plaka sütunu Metin biçiminde alındığı için 06 ve 01 gibi kodlar baştaki sıfırı kaybetmedi.
Nerede bulunur
Komut Veri > Veri Araçları > Metni Sütunlara Dönüştür (Data > Data Tools > Text to Columns) yolunda yer alır. Komutu kullanmadan önce bölmek istediğiniz veriyi içeren tek bir sütunu seçmeniz gerekir; birden fazla sütun seçilirse Excel işlemi yapmaz.Şeritte Alt tuşuna basarak ekranda beliren tuş ipuçlarıyla da komuta klavyeden ulaşabilirsiniz; ipuçlarındaki harfler Excel'in dil sürümüne göre değişir.
Nasıl kullanılır
Sihirbaz üç adımdan oluşur:- Hazırlık: Bölünecek verinin sağındaki sütunların boş olduğundan emin olun. Aksi halde Excel üzerine yazmak isteyip istemediğinizi sorar ya da hedefi değiştirmeniz gerekir.
- Adım 1: Orijinal veri türünü seçin: Sınırlandırılmış (Delimited) ayraçla ayrılmış veriler içindir, Sabit Genişlik (Fixed width) her alanın aynı karakter sayısında olduğu veriler içindir.
- Adım 2: Sınırlandırılmış seçtiyseniz Sekme, Noktalı virgül, Virgül, Boşluk ya da Diğer kutusuna yazdığınız karakteri işaretleyin. Sabit genişlikte ise önizlemede tıklayarak bölme çizgisi ekleyin, çizgiye çift tıklayarak silin. Önizleme penceresinden sonucu izleyebilirsiniz.
- Adım 3: Her sütun için veri biçimini (Genel, Metin, Tarih ya da Sütunu içeri aktarma) seçin ve gerekirse Hedef (Destination) kutusuna sonucun yazılacağı ilk hücreyi girin.
- Son: Son (Finish) düğmesine tıklayın. İşlem geri alınabilir (Ctrl+Z).
Sınırlayıcılar ve sütun veri biçimi
Sınırlandırılmış modda birden fazla ayraç aynı anda işaretlenebilir. Ardışık iki ayraç arasında boş alan kalıyorsa Excel boş bir sütun üretir; bunu istemiyorsanız Ardışık sınırlayıcıları tek say (Treat consecutive delimiters as one) kutusunu işaretleyin. Metin içinde ayraç karakteri geçen alanlar tırnak gibi bir Metin niteleyici (Text qualifier) ile çevrelenmişse bölünmez.Üçüncü adımdaki sütun biçimi seçimi sonucu doğrudan etkiler:
- Genel: Sayılar sayıya, tarihler tarihe çevrilir; baştaki sıfırlar silinir.
- Metin: Değer olduğu gibi metin kalır; stok kodu, posta kodu, telefon gibi baştaki sıfırın korunması gereken alanlar için kullanılır.
- Tarih: Metni gün-ay-yıl sırasını belirterek tarihe çevirir.
- Sütunu içeri aktarma (atla): Seçilen parça sonuca yazılmaz.
- Gelişmiş: Ondalık ve binlik ayırıcıyı belirleyerek, farklı yerel ayarlarla gelen sayıları doğru okutur.
VBA ve formülle bölme
Aynı işlemi makroyla yapmak için Range nesnesinin TextToColumns yöntemi kullanılır. Destination sonucun yazılacağı ilk hücreyi, DataType ise xlDelimited ya da xlFixedWidth değerini belirler; Comma, Semicolon, Space, Tab ve Other ile OtherChar özellikleri ayraçları, FieldInfo ise sütun biçimlerini tanımlar:
VBA
4 satır
Range("A2:A20").TextToColumns _
Destination:=Range("B2"), _
DataType:=xlDelimited, _
Comma:=True
1. Virgülle ayrılmış kayıtları bölme
A sütununda her hücrede ad, soyad ve şehir virgülle birleşik duruyor. A2:A9 aralığını seçin, Veri > Veri Araçları > Metni Sütunlara Dönüştür komutunu açın, Sınırlandırılmış seçeneğini işaretleyin, ayraç olarak Virgül kutusunu seçin, hedef olarak B2 hücresini girip Son düğmesine tıklayın. Örnek dosyada bu işlem makroyla yapılmıştır.Metni Sütunlara Dönüştür
Formülünü incelemek için bir hücre seçin.| A | B | C | D | |
|---|---|---|---|---|
| 1 | Kayıt | Ad | Soyad | Şehir |
| 2 | Ayşe,Yılmaz,İzmir | Ayşe | Yılmaz | İzmir |
| 3 | Mehmet,Kaya,Ankara | Mehmet | Kaya | Ankara |
| 4 | Fatma,Demir,Bursa | Fatma | Demir | Bursa |
| 5 | Ali,Çelik,Konya | Ali | Çelik | Konya |
| 6 | Zeynep,Şahin,Adana | Zeynep | Şahin | Adana |
| 7 | Mustafa,Öztürk,Trabzon | Mustafa | Öztürk | Trabzon |
| 8 | Elif,Aydın,Antalya | Elif | Aydın | Antalya |
| 9 | Burak,Arslan,Eskişehir | Burak | Arslan | Eskişehir |
Virgül AyırmaExcelDepo v1.0.0
2. Baştaki sıfırı Metin biçimiyle koruma
Noktalı virgülle ayrılmış kayıtlarda ilk alan 00125 gibi baştaki sıfırları olan bir stok kodudur. Sihirbazın üçüncü adımında stok kodu sütununu seçip Metin biçimini işaretlemezseniz sıfırlar silinir. Aşağıdaki makro, A2:A9 aralığını noktalı virgüle göre bölerken birinci sütunu metin olarak alır.Metni Sütunlara Dönüştür
Formülünü incelemek için bir hücre seçin.| A | B | C | D | |
|---|---|---|---|---|
| 1 | Ham Kayıt | Stok Kodu | Ürün | Adet |
| 2 | 00125;Kalem;24 | 00125 | Kalem | 24 |
| 3 | 00278;Defter;60 | 00278 | Defter | 60 |
| 4 | 00341;Silgi;115 | 00341 | Silgi | 115 |
| 5 | 01007;Dosya;48 | 01007 | Dosya | 48 |
| 6 | 01022;Zımba;32 | 01022 | Zımba | 32 |
| 7 | 02015;Makas;19 | 02015 | Makas | 19 |
| 8 | 02340;Kalemtıraş;87 | 02340 | Kalemtıraş | 87 |
| 9 | 03008;Cetvel;54 | 03008 | Cetvel | 54 |
Stok KodlarıExcelDepo v1.0.0
3. Sabit genişliğe göre bölme
A sütunundaki kayıtlar ilk iki karakteri plaka kodu, kalanı il adı olacak şekilde ayraçsız yazılmış. Sihirbazda Sabit Genişlik seçeneğini işaretleyin, ikinci adımda önizlemede ikinci karakterden sonra bir bölme çizgisi koyun, plaka sütununun biçimini Metin yapın ve hedefi B2 olarak girin. Makro karşılığı aşağıdadır; sabit genişlikte konumlar sıfırdan başlar.Metni Sütunlara Dönüştür
Formülünü incelemek için bir hücre seçin.| A | B | C | |
|---|---|---|---|
| 1 | Ham Veri | Plaka | Şehir |
| 2 | 34İstanbul | 34 | İstanbul |
| 3 | 06Ankara | 06 | Ankara |
| 4 | 35İzmir | 35 | İzmir |
| 5 | 16Bursa | 16 | Bursa |
| 6 | 07Antalya | 07 | Antalya |
| 7 | 01Adana | 01 | Adana |
| 8 | 42Konya | 42 | Konya |
| 9 | 61Trabzon | 61 | Trabzon |
Plaka ve İlExcelDepo v1.0.0
Kullanırken dikkat edin
- Hedef hücreyi boş bırakmayın: Hedef kutusunu değiştirmezseniz sonuç özgün sütunun üzerine yazılır ve bölünen metnin ilk parçası A sütununda kalır. Orijinal veriyi korumak istiyorsanız Hedef kutusuna sağdaki boş bir hücreyi girin. Hedefin sağında dolu hücreler varsa Excel bunların üzerine yazmadan önce uyarı verir.
- Sonuç formül değil, sabit değerdir: Komut sonucu değer olarak yazar; kaynak hücre değişince bölünmüş sütunlar kendiliğinden güncellenmez. Sürekli güncel kalması gereken bölmelerde SOLDAN, SAĞDAN, PARÇAAL ve BUL işlevlerini ya da Microsoft 365'teki METNEBÖL (TEXTSPLIT) işlevini kullanın.
- Otomatik veri dönüşümüne dikkat: Genel biçimde baştaki sıfırlar silinir, 1-2 gibi metinler tarihe, uzun sayılar bilimsel gösterime dönüşebilir. Kod, telefon ve TC kimlik numarası gibi alanlar için üçüncü adımda Metin biçimini seçin. Tarih ve ondalık ayırıcı da bilgisayarınızın bölgesel ayarlarına göre yorumlanır; ters gelen verilerde Gelişmiş düğmesini ve Tarih seçeneğini kullanın.
- Önceki ayarlar hatırlanır: Excel sihirbazda en son kullandığınız ayraç ayarlarını saklar ve sonraki kullanımda önerir. VBA ile TextToColumns çağırırken kullanmadığınız ayraç özelliklerini açıkça False yapmanız gerekebilir; aksi halde önceki ayarlar kod çalışırken etkili olabilir. Tek sütunluk bir aralık dışındaki seçimlerde yöntem hata verir.
- İlgili konular: Hızlı Doldurma (Flash Fill), Power Query ile sütun bölme, Veri Doğrulama, Bul ve Değiştir, SOLDAN, SAĞDAN, PARÇAAL, BUL, MBUL, UZUNLUK, KIRP, METİNBİRLEŞTİR ve Microsoft 365'te METNEBÖL işlevleri; VBA tarafında Range.TextToColumns yöntemi.