Tüm alfasayısal olmayan karakterleri Excel'de nokta ve boşluk dışında bir dizeden kaldırmam gerekiyor. Saf excel işlevleri yerine VBA kullanan bir çözüm gayet iyi.Tüm alfasayısal olmayan karakterler, Excel'de nokta ve alan dışındaki bir dizeden nasıl kaldırılır?
Tüm alfasayısal olmayan karakterler, Excel'de nokta ve alan dışındaki bir dizeden nasıl kaldırılır?
cevap
Visual Basic Düzenleyicisi'nde yeni modüle bu işlevi ekleyin: Veri hücresinde A1
ise
Function AlphaNumericOnly(strSource As String) As String
Dim i As Integer
Dim strResult As String
For i = 1 To Len(strSource)
Select Case Asc(Mid(strSource, i, 1))
Case 48 To 57, 65 To 90, 97 To 122: 'include 32 if you want to include space
strResult = strResult & Mid(strSource, i, 1)
End Select
Next
AlphaNumericOnly = strResult
End Function
Şimdi Fonksiyonu tanımla bir kullanıcı olarak kullanabilirsiniz, yani boş bu formülü yerleştirmek hücre =AlphaNumericOnly(A1)
. Eğer, yani doğrudan geniş bir ürün yelpazesi dönüştürmek kaynak ayrılmadan tüm alfasayısal olmayan karakterler değiştirmek istiyorsanız
, başka VBA rutin ile yapabilirsiniz:
Sub CleanAll()
Dim rng As Range
For Each rng In Sheets("Sheet1").Range("A1:K1500").Cells 'adjust sheetname and range accordingly
rng.Value = AlphaNumericOnly(rng.Value)
Next
End Sub
Basitçe aynı bu alt yerleştirmek modül ve onu yürütmek. Yine de, bunun aralıktaki herhangi bir formülü değiştireceğini unutmayın.
Albert, hızlıydı. teşekkür ederim. Yarın deneyeceğim. Dediğim gibi, excel hakkında çok az şey bildiğim gibi, tüm excel sayfamda çalıştırmam gereken fonksiyonu nasıl kullanabileceğinizi açıklayabilir misiniz? Bu genellikle 11 sütun ve yaklaşık 1500 satır olacaktır, ancak bu çok olabilir. Teşekkür ederim bu çok takdir oldu – xyz
Albert, bu hızlı, teşekkür ederim. Yarın deneyeceğim. Dediğim gibi, excel hakkında çok az şey bildiğim gibi, tüm excel sayfamda çalıştırmam gereken fonksiyonu nasıl kullanabileceğinizi açıklayabilir misiniz? Bu genellikle 11 sütun ve yaklaşık 1500 satır olacaktır, ancak bu çok olabilir. Teşekkür ederim bu çok takdir – xyz
Benim düzenleme bakın - umarım bu sizin soruların çoğu cevaplar umuyoruz –
Aşağıdaki kodu yazdım ve test ettiğim kadarıyla çalışır, iki işlevden oluşur. İlk kontroller bir dize alfanümerik ve ikinci (aynı zamanda boşlukları kaldırır)
Public Function Isalphanumeric(cadena As String) As Boolean
Select Case Asc(UCase(cadena))
Case 65 To 90 'letras
Isalphanumeric = True
Case 48 To 57 'numeros
Isalphanumeric = True
Case Else
Isalphanumeric = False
End Select
End Function
yedek yapar Ve burada
Function RemoveSymbols_Enhanced(InputString As String) As String
Dim InputString As String
Dim CharactersArray()
Dim i, arrayindex, longitud As Integer
Dim item As Variant
i = 1
arrayindex = 0
longitud = Len(InputString)
'We create an array with non alphanumeric characters
For i = 1 To longitud
If Isalphanumeric(Mid(InputString, i, 1)) = False Then
ReDim Preserve CharactersArray(arrayindex)
CharactersArray(arrayindex) = Mid(InputString, i, 1)
arrayindex = arrayindex + 1
End If
Next
'For each non alphanumeric character we do a replace
For Each item In CharactersArray
item = CStr(item)
InputString = Replace(InputString, item, "")
Next
End Function
- 1. Bir dizeden geçersiz karakterler nasıl kaldırılır?
- 2. Bir dizeden alfasayısal olmayan karakterleri kaldırma
- 3. Arapça'dan olmayan alfasayısal olmayan karakterler karakterleri UTF8 + İngilizce dize
- 4. Tüm alfasayısal olmayan karakterler Javascript'teki bir dizenin başlangıcı ve bitiminden nasıl kesilir?
- 5. Alfasayısal dışındaki tüm karakterleri ve javascript ile boşlukları kaldır
- 6. Alfasayısal ve özel karakterler eklemek için RegEx
- 7. Notepad ++ Bir sözcükten önce ve sonra tüm karakterler nasıl kaldırılır
- 8. Dize içindeki tüm alfasayısal olmayan karakterleri değiştir
- 9. Notepad ++ Belirli bir karaktere sahip tüm karakterler nasıl kaldırılır
- 10. sqlite3 veritabanındaki bir dizeden karakterleri nasıl kaldırılır?
- 11. RegEx (JavaScript bulmak içinde/değiştirin) - alfasayısal olmayan karakterler eşleşen ancak görmezden - ve +
- 12. Kabuk betikindeki bir dizedeki tüm nokta oluşumları nasıl kaldırılır?
- 13. Bir dizeden son ve ilk boşluklar nasıl kaldırılır?
- 14. Tüm karakter olmayan nesneleri plaka görüntüsünden nasıl kaldırılır?
- 15. Bir dizeden alıntıları nasıl kaldırırım?
- 16. Filtre olmayan alfabetik karakterler
- 17. UILabel'den üç nokta nasıl kaldırılır?
- 18. DB'm dışındaki tüm benzersiz olmayan sütunlar nasıl seçilir?
- 19. Alfasayısal ve diğerlerine bölünmüş dize
- 20. MVC web sitesinde mevcut tüm alan çerezleri nasıl kaldırılır?
- 21. Dize Boş alan nasıl kaldırılır
- 22. Kaldır Olmayan İngilizce Karakterler PHP
- 23. Ruby: Bir dizeden izleyen ters eğik çizgi nasıl kaldırılır?
- 24. Alfasayısal olmayan veya boşluk karakterleri içeren satırları nasıl arayabilirim?
- 25. Ruby'de bir alfasayısal dizi oluştur
- 26. Yok olmayan bir alan olan tüm kayıtları bul?
- 27. Vim'deki karakterlerin alfasayısal olmayan ASCII değerlerini nasıl artırabilir/azaltabilirim?
- 28. Görünüşe olmayan bazı standart Karakterler
- 29. Belirtilen sınıflar olmayan öğeler nasıl kaldırılır
- 30. İlk 0'lar (sıfır), C# 2.0'daki dizeden nasıl kaldırılır
dönem/uzay kısmı hariç, bu soruya bakın kaldırma fonksiyonu gider olsun. Deseniniz [AZ, az, 0-9, \., \ S] gibi olacaktır. Http://stackoverflow.com/questions/10789948/remove-non-numeric-characters-from-excel – Alexander