Ana içeriğe atla

Her kelimenin ilk harfi hücreden nasıl çıkarılır?

Çalışma sayfanızda ülke adlarından oluşan bir listeniz olduğunu ve bu adlardaki her kelimenin ilk harfini çıkarmak istediğinizi düşünün. Excel, hücredeki her kelimenin ilk harflerini çıkarmak için doğrudan bir özellik sağlamaz. Ancak bu görevi verimli bir şekilde gerçekleştirmek için bazı pratik yöntemler tanıtacağım ve süreci basit ve etkili hale getireceğim.


Hücreden her kelimenin ilk harfini formülle çıkarın

Bir hücredeki her kelimenin ilk harfini elde etmek için aşağıdaki dizi formülü size yardımcı olabilir.

1. Lütfen aşağıdaki formülü sonucu almak istediğiniz boş bir hücreye kopyalayın ve ardından tuşuna basın. Ctrl + Üst Karakter + Enter ilk sonucu almak için anahtarları bir araya getirin.

=CONCAT(LEFT(FILTERXML("<a><b>"&SUBSTITUTE(A2," ","</b><b>")&"</b></a>","//b"),1))

2. Daha sonra diğer hücreleri doldurmak için formülü aşağı çekin. Bu eylem, her hücredeki her kelimenin ilk harfini tek seferde otomatik olarak çıkaracaktır. Ekran görüntüsüne bakın:

Bu formülün açıklaması:
  • YERİNDEKİ(A2;" "," "):Bu işlev, A2 hücresindeki metindeki her boşluğu ile değiştirir. Bu, metindeki her kelimeyi bu XML etiketleriyle etkili bir şekilde ayırır. Örneğin, A2 "Merhaba Dünya" içeriyorsa formülün bu kısmı onu "Merhaba Dünya"ya dönüştürür.
  • " "&...&" ": Bu bölüm , başında ve sonunda bulunan SUBSTITUTE fonksiyonunun sonucunu sarar. Örneğe devam edersek, dize artık Merhaba Dünya haline gelir ve her kelimenin etiketler içine alındığı geçerli bir XML yapısı oluşturur.
  • FILTERXML(...,"//b"): FILTERXML önceki adımlarda oluşturulan XML dizesini ayrıştırmak için kullanılır. XPath sorgusu //b , etiketlerin içindeki tüm öğeleri, yani orijinal dizedeki her sözcüğü seçer. Örneğimizi kullanırsak, FILTERXML iki öğeli bir dizi döndürür: "Merhaba" ve "Dünya".
  • SOL(...,1): Daha sonra LEFT işlevi, FILTERXML tarafından döndürülen dizinin her öğesine uygulanır ve her kelimenin ilk harfi çıkarılır. Örnekte bu "H" ve "W" ile sonuçlanacaktır.
  • BİRLEŞTİR(...): Son olarak CONCAT işlevi dizinin tüm öğelerini tek bir dizede birleştirir. "Merhaba Dünya" örneğimiz için, "H" ve "W"yi birleştirerek "HW" oluşturacaktır.

Kutools AI Aide ile Hücreden her kelimenin ilk harfini çıkarın

Bir hücredeki her kelimenin ilk harfini hızlı bir şekilde çıkarın Kutools AI Yardımcısı. Karmaşık formüllere gerek yok; Yapay zeka asistanı görevi sizin için otomatikleştirerek veri işlemeyi basit ve verimli hale getirir. Excel iş akışınızı kolaylaştırın ve işinizi kolaylaştırın. Denemek Kutools AI Yardımcısı ve akıllı Excel işlemlerini deneyimleyin!

not: Bunu kullanmak için Kutools AI Yardımcısı of Kutools for ExcelLütfen Kutools for Excel'i indirip yükleyin İlk.

Kutools for Excel'i kurduktan sonra lütfen tıklayın Kutools AI > Yapay Zeka Yardımcısı açmak için Kutools AI Yardımcısı bölme:

  1. Veri listesini seçin, ardından ihtiyacınızı sohbet kutusuna yazın ve tıklayın. Gönder tuşuna basın veya tuşuna basın. Keşfet soruyu gönderme tuşu;
  2. Analiz ettikten sonra tıklayın Gerçekleştirmek Çalıştırmak için düğmeye basın. Kutools AI Aide, isteğinizi AI kullanarak işleyecek ve sonuçları doğrudan Excel'e döndürecektir.


Kullanıcı Tanımlı İşleviyle Hücreden her kelimenin ilk harfini çıkarın

Bir hücreden her kelimenin ilk harfini çıkarmak, Excel'deki Kullanıcı Tanımlı İşlev (UDF) kullanılarak büyük ölçüde optimize edilebilecek bir görevdir. Bu bölümde, bu görevi verimli bir şekilde gerçekleştirmek için UDF'nin nasıl oluşturulacağı ve kullanılacağı açıklanmaktadır.

1. Basılı tutun ALT + F11 tuşlarını açmak için Uygulamalar için Microsoft Visual Basic penceresi.

2. tıklayın Ekle > modülve aşağıdaki kodu Modül Penceresi.

Function GetFirstLetters(rng As Range) As String
'Updateby Extendoffice
    Dim arr
    Dim I As Long
    arr = VBA.Split(rng, " ")
    If IsArray(arr) Then
        For I = LBound(arr) To UBound(arr)
            GetFirstLetters = GetFirstLetters & Left(arr(I), 1)
        Next I
    Else
        GetFirstLetters = Left(arr, 1)
    End If
End Function

3. Daha sonra bu kodu kaydedip kapatın, çalışma sayfasına geri dönün ve bu formülü girin = GetFirstLetters (A2) boş bir hücreye. Daha sonra doldurma tutamacını bu formülü uygulamak istediğiniz hücrelere sürükleyin. Ve ilk harflerin tümü kelime dizisinden alınmıştır, ekran görüntüsüne bakın:


İlgili yazılar:

  • Metin dizesinden ilk veya son iki veya n kelimeyi çıkarın
  • Boşlukla ayrılmış bir metin dizeleri listeniz varsa ve şimdi, aşağıdaki ekran görüntüsünü elde etmek için hücre değerinden ilk veya son üç veya n kelimeyi çıkarmak istiyorsunuz. Bu makale, Excel'deki metin dizesinden ilk veya son iki veya n kelimeyi çıkarmak için bazı formülleri tanıtacağım.
  • Yalnızca boşluk veya virgülden önceki/sonraki metni çıkar
  • Listeden boşluktan önceki veya sonraki metni aşağıda gösterildiği gibi çıkarmak istediğinizde, bitirmek için iyi bir yolunuz var mı? Size yalnızca Excel'de boşluktan önce veya sonra metin çıkarmanın bazı hileli yollarını anlatayım.
  • Metin dizesinden e-posta adresini çıkarın
  • Web sitesinden Excel çalışma sayfasına bazı e-posta adreslerini içe aktardığınızda, her zaman alakasız metin içerir, ancak şimdi yalnızca metin dizesinden salt e-posta adreslerini çıkarmak istersiniz (aşağıdaki ekran görüntülerine bakın). Sadece e-posta adreslerini hücre metninden nasıl hızlı bir şekilde alabildiniz?
  • İki farklı karakter arasındaki dizeyi çıkarın
  • Excel'de, aşağıda gösterilen ekran görüntüsünden iki karakter arasındaki dizenin bir kısmını çıkarmanız gereken bir dizi listeniz varsa, bunu olabildiğince çabuk nasıl halledebilirsiniz? Burada, bu işi çözmek için bazı yöntemler sunuyorum.

En İyi Ofis Üretkenlik Araçları

🤖 Kutools AI Yardımcısı: Aşağıdakilere dayalı olarak veri analizinde devrim yaratın: Akıllı Yürütme   |  Kodunu oluşturun  |  Özel Formüller Oluşturun  |  Verileri Analiz Edin ve Grafikler Oluşturun  |  Kutools İşlevlerini Çağır...
Popüler Özellikler: Yinelenenleri Bul, Vurgula veya Tanımla   |  Boş Satırları Sil   |  Veri Kaybı Olmadan Sütunları veya Hücreleri Birleştirin   |   Formülsüz Tur ...
Süper Arama: Çoklu Ölçütlü VLookup    Çoklu Değer VLookup  |   Birden Çok Sayfada VLookup   |   Bulanık Arama ....
Gelişmiş Açılır Liste: Hızla Açılır Liste Oluşturun   |  Bağımlı Açılır Liste   |  Çoklu Seçim Açılır Liste ....
Sütun Yöneticisi: Belirli Sayıda Sütun Ekleme  |  Sütunları Taşı  |  Gizli Sütunların Görünürlük Durumunu Değiştir  |  Aralıkları ve Sütunları Karşılaştırın ...
Öne Çıkan Özellikler: Izgara Odağı   |  Tasarım görünümü   |   Büyük Formül Çubuğu    Çalışma Kitabı ve Sayfa Yöneticisi   |  Kaynak Kütüphanesi (Otomatik metin)   |  Tarih Seçici   |  Çalışma Sayfalarını Birleştirin   |  Hücreleri Şifrele/Şifresini Çöz    E-postaları Listeye Göre Gönder   |  Süper Filtre   |   Özel Filtre (kalın/italik/üstü çizili filtre...) ...
En İyi 15 Araç Seti12 Metin Tools (Metin ekle, Karakterleri Kaldır, ...)   |   50+ Grafik Türleri (Gantt şeması, ...)   |   40+ Pratik Formüller (Yaşı doğum gününe göre hesapla, ...)   |   19 sokma Tools (QR Kodunu Girin, Yoldan Resim Ekle, ...)   |   12 Dönüştürme Tools (Sayılardan Kelimelere, Para Birimi Dönüştürme, ...)   |   7 Birleştir ve Böl Tools (Gelişmiş Kombine Satırları, Bölünmüş hücreler, ...)   |   ... ve dahası

Kutools for Excel ile Excel Becerilerinizi Güçlendirin ve Daha Önce Hiç Olmadığı Gibi Verimliliği Deneyimleyin. Kutools for Excel, Üretkenliği Artırmak ve Zamandan Tasarruf Etmek için 300'den Fazla Gelişmiş Özellik Sunar.  En Çok İhtiyacınız Olan Özelliği Almak İçin Buraya Tıklayın...

Açıklama


Office Tab, Office'e Sekmeli Arayüz Getirir ve İşinizi Çok Daha Kolay Hale Getirir

  • Word, Excel, PowerPoint'te sekmeli düzenlemeyi ve okumayı etkinleştirin, Publisher, Access, Visio ve Project.
  • Yeni pencereler yerine aynı pencerenin yeni sekmelerinde birden çok belge açın ve oluşturun.
  • Üretkenliğinizi% 50 artırır ve her gün sizin için yüzlerce fare tıklamasını azaltır!
Comments (18)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hello, If the the nth Word is enclosed in a (), it is returning the ( since it comes before the First Letter.

Example:
Word Word (Word)

How to return WWW instead of WW( ?
This comment was minimized by the moderator on the site
Hello, Sharmane
Maybe the following code can help you:
Function GetFirstLetters(rng As Range) As String
    Dim arr() As String
    Dim i As Long
    
    arr = VBA.Split(rng.Value, " ")
    
    For i = LBound(arr) To UBound(arr)
        If Left(arr(i), 1) <> "(" And Right(arr(i), 1) <> ")" Then
            GetFirstLetters = GetFirstLetters & Left(arr(i), 1)
        ElseIf Left(arr(i), 1) = "(" And Right(arr(i), 1) = ")" Then
            GetFirstLetters = GetFirstLetters & Mid(arr(i), 2, 1)
        End If
    Next i
End Function


Please have a try, thank you!
This comment was minimized by the moderator on the site
Another suggestion if using Microsoft 365: =TEXTJOIN("",,LEFT(TEXTSPLIT(D9," "),1)) where the source string is in B9.
Wrap in UPPER function to enforce uppercase: =UPPER(TEXTJOIN("",,LEFT(TEXTSPLIT(D9," "),1)))
@Pradeep Gyawali -> add space: =UPPER(TEXTJOIN(" ",,LEFT(TEXTSPLIT(D9," "),1)))
This comment was minimized by the moderator on the site
Wondering how to add this into the existing formula I have that works to bring the value over from a cell in another sheet? I only want to bring over the first character in each cell. Here's the formula

=IF(LOOKUP(2,1/(OriginalSubmission!D:D<>""),ROW(OriginalSubmission!D:D))=ROW(OriginalSubmission!D4),"",INDIRECT("OriginalSubmission!D5:"&"D"&(LOOKUP(2,1/(OriginalSubmission!D:D<>""),ROW(OriginalSubmission!D:D)))))
This comment was minimized by the moderator on the site
Hello, SARAH
Do you mean extracting each first character in cells from another worksheet? If so, you just need to copy and paste the code in this article, and then apply this formula into another sheet.
=GetFirstLetters(OriginalSubmission!D4)


Note: OriginalSubmission is the sheet name that you want to extract charatcers from.
Please try, hope it can help you!
This comment was minimized by the moderator on the site
How to create space between the letters?

South Korea= S K
This comment was minimized by the moderator on the site
Hi, Gyawali
If you want to add space for each character, please apply the following VBA code:
Function GetFirstLetters(Rng As Range) As String
'Updateby Extendoffice
    Dim xStr
    Dim arr
    Dim I As Long
    xStr = " "
    arr = VBA.Split(Rng, " ")
    If IsArray(arr) Then
        For I = LBound(arr) To UBound(arr)
            GetFirstLetters = GetFirstLetters & Left(arr(I), 1) & xStr
        Next I
    Else
        GetFirstLetters = Left(arr, 1) & xStr
    End If
End Function


After insert the code, and then apply this formula: =GetFirstLetters(A2) to get the result you need.
Please try, hope it can help you!
This comment was minimized by the moderator on the site
Why is this giving me the first 2 letters in each word?
This comment was minimized by the moderator on the site
This is awesome. Such a time saver
This comment was minimized by the moderator on the site
This code is good for upto five words, where D20 is the cell with data.



=IF(ISERR(LEFT($D$20,1)&MID($D$20,SEARCH(" ",$D$20)+1,1)
&MID($D$20,SEARCH(" ",$D$20,SEARCH(" ",$D$20)+1)+1,1)
&MID($D$20,SEARCH(" ",$D$20,SEARCH(" ",$D$20,SEARCH(" ",$D$20)+1)+1)+1,1)
&MID($D$20,SEARCH(" ",$D$20,SEARCH(" ",$D$20,SEARCH(" ",$D$20,SEARCH(" ",
$D$20)+1)+1)+1)+1,1)),IF(ISERR(LEFT($D$20,1)&MID($D$20,SEARCH(" ",$D$20)+1,1)
&MID($D$20,SEARCH(" ",$D$20,SEARCH(" ",$D$20)+1)+1,1)
&MID($D$20,SEARCH(" ",$D$20,SEARCH(" ",$D$20,SEARCH(" ",$D$20)+1)+1)+1,1)),
IF(ISERR(LEFT($D$20,1)&MID($D$20,SEARCH(" ",$D$20)+1,1)
&MID($D$20,SEARCH(" ",$D$20,SEARCH(" ",$D$20)+1)+1,1)),
IF(ISERR(LEFT($D$20,1)&MID($D$20,SEARCH(" ",$D$20)+1,1)),
IF(ISERR(LEFT($D$20,1)),"",LEFT($D$20,1)),LEFT($D$20,1)
&MID($D$20,SEARCH(" ",$D$20)+1,1)),LEFT($D$20,1)&MID($D$20,SEARCH(" ",$D$20)+1,1)
&MID($D$20,SEARCH(" ",$D$20,SEARCH(" ",$D$20)+1)+1,1)),
LEFT($D$20,1)&MID($D$20,SEARCH(" ",$D$20)+1,1)
&MID($D$20,SEARCH(" ",$D$20,SEARCH(" ",$D$20)+1)+1,1)
&MID($D$20,SEARCH(" ",$D$20,SEARCH(" ",$D$20,SEARCH(" ",$D$20)+1)+1)+1,1)),LEFT($D$20,1)
&MID($D$20,SEARCH(" ",$D$20)+1,1)&MID($D$20,SEARCH(" ",$D$20,SEARCH(" ",$D$20)+1)+1,1)
&MID($D$20,SEARCH(" ",$D$20,SEARCH(" ",$D$20,SEARCH(" ",$D$20)+1)+1)+1,1)
&MID($D$20,SEARCH(" ",$D$20,SEARCH(" ",$D$20,SEARCH(" ",$D$20,SEARCH(" ",$D$20)+1)
+1)+1)+1,1))
This comment was minimized by the moderator on the site
Подскажите пожалуйста, можно ли модифицировать код чтобы забиралась не первые а Заглавные буквы?
This comment was minimized by the moderator on the site
i think it has one bug, it's automatically removed from module when sheet is closed, need to again every time when open sheet same process to be required, please advice how to save this formula in excel permanently.
This comment was minimized by the moderator on the site
Pls save excel as Excel Macro-Enablel work book.
This comment was minimized by the moderator on the site
Please include this part: If you create a function called DISCOUNT in a workbook called Personal.xlsb and you call that function from another workbook, you must type =personal.xlsb!discount(), not simply =discount(). https://support.office.com/en-us/article/Create-Custom-Functions-in-Excel-2007-2f06c10b-3622-40d6-a1b2-b6748ae8231f
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations