Elimizde 3 tablo olsa;

Bunlardan bir 4. tablo olusturmamiz gerekse;

Diyelim 1. tablodaki sutunlardan birinde 5'ten kucuk, 11'den buyuk sayilari arasak; Ayrica o sutuna hatali olarak girilmis verileri de ayiklamak istesek; Sonra bulduklarimizi 4. tabloya yazdirsak;

Sonra 2. ve 3. tabloda da benzer seyler arayip, 4. tabloya yazdirsak;

Hani o IF'li mifli fonksiyonlar ise yarar mola? Nasi olur bu?

Editski: Hatalari ayiklamaktan kastim su: yani o sutuna 5 ile 11 arasinda rakamlar girilmesi gerekiyorken, birisi tutup yanlislikla #5, %9 veya 6p gibi degerler girmis olsun. Onlari da ayiklamam ama bu isi manuel olarak yapmamam lazim.

 

ifli değil de vlookup falan kascan patron. şimdi anlatsam buradan anlaman. vlookup(düşeyara) fonksiyonunu araştır. işine yarar. hadi kolay gele.

markasiz

DÜŞEYARA olmaz; bu fonksiyon aralıktaki değerleri yazdırmaz, direkt değeri bulup yanındaki hücrelerden birinin değerin yazdırır. ÖR:

1 Ali
2 Veli
3 Ayşe
4 Mehmet
5 Emre

gibi iki sütundan oluşan bir tablonuz olsun. Düşeyara ile örneğin 4 ID numaralı kişinin adını herhangi bir hücreye yazdırabilirsiniz. Arama kriteriniz 4, yazdırmak istediğiniz hücre de hemen bir yandaki sütuna ait hücre.
------------------------------
5'ten küçük, 11'den büyük sayıları başka bir sütuna yazdırmak için en basit yöntem EĞER ile yapılır, ilgili hücrenin örneğin 4 yanındaki hücreye eğer A1 hücresi 5'ten küçük VE 11'den büyükse; A1 gibi bir formül. Ancak bu formül yeni oluşturduğunuz sütunda istediğiniz kriterleri sağlamayan hücreler için boş hücreler olacaktır. Siz sadece bu kritere uyan hücreleri sırayla yazdırmak isterseniz Makro kullanarak yazmanız gerekir.

Hataları ayıklamak mevzunu anlamadım. Ama eğer istediğiniz şey anlattığım gibiyse makro ile nasıl yapacağınızı anlatayım.

himmet dayi

iyi de sadece if kullanırsan da olmaz ki. kombine edeceksin patron. evet haklısın ali mali çıkarır da, ali gördüğün yerde say may yaptırabilirsin. yoksa toblo içindeki değeri nasıl aratacaksın ifle?

markasiz

@markasiz yok dostum if ile aratmayacaksın. Atıyorum 1000 tane değer var elinde 1. hücreden 1000. hücreye kadar. Sen de 5-11 aralığında olanları bir yan sütuna aktarmak istersen B1'e ilgili if formülünü yazarsın ve formülü altındaki 999 hücreye kopyalarsın. Ancak önceki cevapta da belirttiğim gibi aralık dışı olan değerler için hücre boş kalır. Bu yüzden çözüm: Makro yazmak.

himmet dayi

Ahan da makro:

Sub Makro1()
'
' Makro1 Makro
'
Dim i As Integer
Dim j As Integer
j = 1
For k = 1 To 1000
Cells(k, 4) = ""
Next k
For i = 1 To 1000
If Cells(i, 1) >= 5 And Cells(i, 1) <= 11 Then
Cells(j, 4) = Cells(i, 1)
j = j + 1
End If

Next
End Sub

himmet dayi
1

mobil görünümden çık