Metin dizesini Excel'deki istisnalarla uygun duruma nasıl dönüştürebilirim?
Excel'de, metin dizelerini kolayca uygun duruma dönüştürmek için Uygun işlevi uygulayabilirsiniz, ancak bazen, aşağıdaki ekran görüntüsü gibi metin dizelerini uygun duruma dönüştürürken bazı belirli kelimeleri hariç tutmanız gerekir. Bu yazıda, bu işi Excel'de çözmek için bazı hızlı püf noktalarından bahsedeceğim.
Formülü kullanarak istisnalarla metin dizelerini uygun büyük harfe dönüştürün
Metin dizelerini VBA kodunu kullanarak istisnalarla uygun büyük / küçük harfe dönüştürün
Formülü kullanarak istisnalarla metin dizelerini uygun büyük harfe dönüştürün
Aşağıdaki formül bu görevin hızlı bir şekilde üstesinden gelmenize yardımcı olabilir, lütfen şu şekilde yapın:
Şu formülü girin:
= ÜST (SOL (A2)) & ORTA (KIRP (YEDEK (YEDEK (YEDEK (YEDEK (A2) & "", "Of", "/"), "A", "a"), "Eşittir "," eşittir ")," ABD "," ABD ")), 2, UZUNLUK (A2)) sonucu almak istediğiniz bir hücreye yerleştirin ve ardından bu formülü doldurmak için doldurma tutamacını sürükleyin ve metin dizeleri büyük / küçük harfe dönüştürüldü ancak belirli istisnalar, ekran görüntüsüne bakın:
not: Yukarıdaki formülde, A2 dönüştürmek istediğiniz hücre "Of", "A", "Is", "Usa" dönüştürmeden sonra normal, uygun durum kelimeleridir, "/", "A", "eşittir", "ABD" uygun durum dışında bırakmak istediğiniz kelimelerdir. Bunları ihtiyacınıza göre değiştirebilir veya SUBSTITUTE işlevi ile başka kelimeler ekleyebilirsiniz.
Metin dizelerini VBA kodunu kullanarak istisnalarla uygun büyük / küçük harfe dönüştürün
Yukarıdaki formülün anlaşılması ve ihtiyacınıza göre değiştirilmesi biraz zorsa, burada, bu görevi bitirmek için bir VBA kodu da uygulayabilirsiniz. Lütfen aşağıdaki adımları tek tek uygulayın.
1. Basılı tutun ALT + F11 tuşlarını açmak için Uygulamalar için Microsoft Visual Basic pencere.
2. tıklayın Ekle > modülve aşağıdaki kodu Modül Penceresi.
VBA kodu: metin dizelerini istisnalar dışında uygun büyük / küçük harfe dönüştürün:
Sub CellsValueChange()
'Updateby Extendoffice
Dim xSRg As Range
Dim xDRg As Range
Dim xPRg As Range
Dim xSRgArea As Range
Dim xRgVal As String
Dim xAddress As String
Dim I As Long
Dim K As Long
Dim KK As Long
On Error Resume Next
xAddress = Application.ActiveWindow.RangeSelection.Address
Set xSRg = Application.InputBox("Original cells:", "KuTools For Excel", xAddress, , , , , 8)
If xSRg Is Nothing Then Exit Sub
Set xDRg = Application.InputBox("Output cells:", "KuTools For Excel", , , , , , 8)
If xDRg Is Nothing Then Exit Sub
Set xPRg = Application.InputBox("Cells to exclude:", "KuTools For Excel", , , , , , 8)
If xPRg Is Nothing Then Exit Sub
Set xDRg = xDRg(1)
For I = 1 To xSRg.Areas.Count
Set xSRgArea = xSRg.Areas.Item(I)
For K = 1 To xSRgArea.Count
xRgVal = xSRgArea(K).Value
If Not IsNumeric(xRgVal) Then
xRgVal = CorrectCase(xRgVal, xPRg)
xDRg.Offset(KK).Value = xRgVal
End If
KK = KK + 1
Next
Next
End Sub
Function CorrectCase(ByVal xRgVal As String, ByVal xPRg As Range) As String
Dim xArrWords As Variant
Dim I As Integer
Dim xPointer As Integer
Dim xVal As String
xPointer = 1
xVal = xRgVal
xArrWords = WordsOf(xRgVal)
For I = 0 To UBound(xArrWords)
xPointer = InStr(xPointer, " " & xVal, " " & xArrWords(I))
Debug.Print xPointer
Mid(xVal, xPointer) = CorrectCaseOneWord(CStr(xArrWords(I)), xPRg)
Next I
CorrectCase = xVal
End Function
Function WordsOf(xRgVal As String) As Variant
Dim xDelimiters As Variant
Dim xArrRtn As Variant
xDelimiters = Array(",", ".", ";", ":", Chr(34), vbCr, vbLf)
For Each xEachDelimiter In xDelimiters
xRgVal = Application.WorksheetFunction.Substitute(xRgVal, xEachDelimiter, " ")
Next xEachDelimiter
xArrRtn = Split(Trim(xRgVal), " ")
WordsOf = xArrRtn
End Function
Function CorrectCaseOneWord(xArrWord As String, xERg As Range) As String
With xERg
If IsError(Application.Match(xArrWord, .Cells, 0)) Then
CorrectCaseOneWord = Application.Proper(xArrWord)
Else
CorrectCaseOneWord = Application.VLookup(xArrWord, .Cells, 1, 0)
End If
End With
End Function
3. Daha sonra tuşuna basın. F5 Bu kodu çalıştırmak için tuşuna basın ve dönüştürmek istediğiniz orijinal hücreleri seçmenizi hatırlatmak için bir istem kutusu açılır, ekran görüntüsüne bakın:
4. Ve sonra tıklayın OK, sonuçların çıktısını almak istediğiniz hücreleri seçin, ekran görüntüsüne bakın:
5. Tıklamaya git OKve açılır iletişim kutusunda, hariç tutmak istediğiniz metinleri seçin, ekran görüntüsüne bakın:
6. Ve sonra tıklayın OK iletişim kutularından çıkmak için ve tüm metin dizeleri uygun büyük / küçük harfe dönüştürüldü, ancak belirtilen sözcükleri hariç tutun, ekran görüntüsüne bakın:
En İyi Ofis Üretkenlik Araçları
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...
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!