Karakter Seçimli Filtre Yapma

  • Konuyu başlatan Konuyu başlatan muhsar
  • Başlangıç tarihi Başlangıç tarihi
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...

muhsar

Kullanıcı
Katılım
28 Tem 2022
Mesajlar
185
Excel Versiyonu
Excel 2016
Excel Sürümü
64 Bit
Excel Dili
Türkçe
Sub filtrele()

ActiveSheet.Unprotect "1"

Dim arr1, arr2, i As Integer

With Sheets("ARA")
.Range("A2:Z2").Clear
.Range("A12:Z65536").Clear

arr1 = Array("A", "B", "E", "H", "P", "Q", "O") 'O Tc icin
arr2 = Array(IIf(.Range("B4").Value = "HEPSİ", "", .Range("B4").Value), _
IIf(.Range("B8").Value = "HEPSİ", "", .Range("B8").Value), _
IIf(.Range("B7").Value = "HEPSİ", "", .Range("B7").Value), _
IIf(.Range("B6").Value = "HEPSİ", "", .Range("B6").Value), _
IIf(.Range("B5").Value = "", "", "*" & .Range("B5").Value & "*"), _
IIf(.Range("D5").Value = "", "", "*" & .Range("D5").Value & "*"), _
IIf(.Range("D4").Value = "HEPSİ", "", .Range("D4").Value)) 'Tc icin



For i = LBound(arr1) To UBound(arr1)
.Range(arr1(i) & 2).Value = arr2(i)
Next

Sheets("AKTİF_HASTA_LİSTESİ").Range("A8:Z65536").AdvancedFilter Action:= _
xlFilterCopy, CriteriaRange:=.Range("A1:Z2"), CopyToRange:=.Range("A12:Z12")
End With

Erase arr1: Erase arr2
ActiveSheet.Protect "1"


End Sub


merhaba;hocam yukarıdaki kodda bulunan
IIf(.Range("D4").Value = "HEPSİ", "", .Range("D4").Value)) 'Tc icin
satırına göre tc nin tamamını yazmayınca filtrede veri getirmiyor ,fakat isim soyisim de kaç karakter yazarsam ona göre filtre yapıyor
IIf(.Range("D5").Value = "", "", "*" & .Range("D5").Value & "*"), _
bu satırı kopyalayıp d5 leri d4 ile değiştirip kullanmak istediğimde hata verdi,neyi eksik yapıyor olabilirim
 
Çözüm
Son olarak alttaki gibi kodu yapınız gereksiz yerlerin formatıda değişmemiş olur.
Kolay gelsin.

VBA:
İndirmek için giriş yapmanız gerekmektedir.
(13 satır)
18 nolu mesajı uyguladınızmı?
Kodda zaten metin biçimlendirme var.Kodu önce bir çalıştırın ve veri girip deneyin.Şekil olarak yeşil bir şey çıkacak solunda.
 
Özetle örnek resimdeki gibi olacak görüntü.

yesi.webp
 
Rica ederim.Tarih olayıiçin bu kodu ekleyiniz.Resimde bir y fazla olmuş :)

VBA:
İndirmek için giriş yapmanız gerekmektedir.
(1 satır)

Unbenannt.webp
 
İnternette dolaşırken bir kod buldum ve ona göre makro kaydet ile ayarlayıp düzenledim.
Artık Tc sütunundaki verilerin formatını metin yada içine girip çift tıklama olayına vs... olayına gerek kalmadı.
Kullandığım yöntem TextToColumns .

Açıklamada ekledim koda.

VBA:
İndirmek için giriş yapmanız gerekmektedir.
(66 satır)
 

Ekli dosyalar

Son olarak alttaki gibi kodu yapınız gereksiz yerlerin formatıda değişmemiş olur.
Kolay gelsin.

VBA:
İndirmek için giriş yapmanız gerekmektedir.
(68 satır)
 
Çözüm
Rica ederim.Bende merak ediyordum önceden metin olarak biçimli sayıların(yeşil görünümlü) nasıl normal formata topluca aktarma olayını.Kodda o da var :) Çok iyi oldu.
 
Bir sağlıkçı olarak Excel ile bişeyler yaptıkça öğrenmeye, öğrendikçe bu işi sevmeye başladım.sayenizde çok şey öğreniyorum.sitede emeği geçen herkesin emeğine sağlık ,hepinize çok teşekkür ederim.
 
Durum
Üzgünüz bu konu cevaplar için kapatılmıştır...
Benzer Konular Popüler İçerikler Daha Fazlası
Geri
Üst Alt