• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Bir Alan içindeki En Yüksek Rakamın yeri????

Katılım
5 Haziran 2006
Mesajlar
255
Excel Vers. ve Dili
Office 2010 Türkçe
A1:E10 alanında rakamların olduğunu düşünürsek en yüksek rakamın koordinatlarını (kaçıncı satır kaçıncı sütun) nasıl buluruz?
 
Merhaba.
Aşağıdaki kodları bir modüle kopyalayınız.Ve çalıştırınız.A1:E10 Aralığındaki en büyük sayıyı bulur.ve bulduğu yerin Satırını sütununu ve adresini verir.:cool:
Kod:
Sub enbuyuk()
Dim sayi As Single, hucre As Range, sat As Long, sut As Long, adrs As String
For Each hucre In Range("A1:E10")
If hucre.Value > sayi Then
    sayi = hucre.Value
    sat = hucre.Row
    sut = hucre.Column
    adrs = hucre.Address
End If
Next
MsgBox "En Büyük Sayı : " & sayi & vbLf & "Satır : " & sat & _
vbLf & "Sütun : " & sut & vbLf & "Adres : " & adrs, vbOKOnly
End Sub
 
makro kullanmayı bilmiyorum. formüllerle olan yolu bana daha uygun.Çünkü sadece en büyük değil en küçük ve ortalama sayı vb. bulmak için de örnek teşkil edecek.
 
makro kullanmayı bilmiyorum. formüllerle olan yolu bana daha uygun.Çünkü sadece en büyük değil en küçük ve ortalama sayı vb. bulmak için de örnek teşkil edecek.


Sayın erkanfun,

bende bu siteye geldiğimde makronun m'sini bilmiyordum, şimdi size kullanıcı tanımlı bir fonksiyon önermek istiyorum.

Fonksiyonlarla yapmaya çalıştım ama, kafam basmadı, yada zor geldiğinden öyle oldu, bilemiyorum artık

Gönderdiğim dosyayı inceleyiniz. Eğer çalıştığına inanırsanız eklenti olarak saklayıp, tüm dosyalarınızda kullanıcı tanımlı fonksiyon olarak kullanabilirsiniz.

Eklenti hazırlamak :

http://www.excel.web.tr/showthread.php?t=7756
 
Son düzenleme:
Teşekkür ederim bu işime yarayacak.
Fakat sizden bir ricam daha olacak.
Ben aynı alan içinde maksimum sayıyı bulduktan sonra yine aynı alan içinde 2.,3., en büyük sayının adresini de bulmak istiyorum.Bunu yaparken bir önceki sayının satır ve sütununu gözardı etsin geri kalan alanlarda arasın.


mesela maksimum sayı A4 hücresinde ise ikinci maksimum sayıyı ararken A sütununu ve 4. satırı artık devredışı bıraksın geri kalan yerlerde arasın.benim asıl istediğim bunu yapabilmek.Yardımcı olabilir misiniz bu konuda? yada bir alan içersinde arama yaparken belirli bir noktayı devredışı nasıl bırakırız?
 
Sayın erkanfun,

Size yapmaya çalıştığım kullanıcı tanımlı fonksiyonda aranan değeri siz veriyorsunuz. İster maksimum sayıyı aratın, ister en büyük 5. değeri, isterseniz en küçük 3. değeri, siz yeter ki fonksiyona aratacağınız değeri ve arama alanını veriniz
 
yine teşekkür ederim fakat koordinat olarak yine bulamıyorum. İlk yazdığım mesajı okursanız ben maksimum sayının,belirtilen alanın kaçıncı satırında ve kaçıncı sütununda olduğunu bulmak istemiştim.
 
Aşağıdaki örnek kodu deneyiniz.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
[A1] = Target.EntireRow.Address & ActiveCell.EntireColumn.Address
End Sub

Dosyayı inceleyiniz.
 
Son düzenleme:
Gönderdiğim dosyadaki makroyu aşağıdaki şekilde değiştirebilirsiniz


Function AdresBul(Değer, Bakılacak_Alan As Range)
Gönder = ""
Değer = UCase(Değer)
For Each Hücre In Bakılacak_Alan
If Değer = UCase(Hücre) Then
Gönder = "Satır : " & Hücre.Row & " Sütun : " & Hücre.Column
Exit For
End If

Next
AdresBul = Gönder
End Function
 
A1:E10 alanında rakamların olduğunu düşünürsek en yüksek rakamın koordinatlarını (kaçıncı satır kaçıncı sütun) nasıl buluruz?

Necdet Bey kullanıcı tanımlı fonksiyon ile yapmış fonksiyonlu örneğide şöyledir.

Aralıktaki maksimum değerin adresi için

=HÜCRE("address";İNDİS(A1:E10;MİN(EĞER(A1:E10=MAK(A1:E10);SATIR(A1:E10)-SATIR(A1)+1));KAÇINCI(MAK(A1:E10);İNDİS(A1:E10;MİN(EĞER(A1:E10=MAK(A1:E10);SATIR(A1:E10)-SATIR(A1)+1));0);0)))

yazıp direk enter tuşuna basmadan CTRL+SHIFT+ENTER tuşlarına birlikte basınız.

Örnek dosya ektedir.

Aralıkta minumum değerin adresi için

=HÜCRE("address";İNDİS(A1:E10;MİN(EĞER(A1:E10=MİN(A1:E10);SATIR(A1:E10)-SATIR(A1)+1));KAÇINCI(MİN(A1:E10);İNDİS(A1:E10;MİN(EĞER(A1:E10=MİN(A1:E10);SATIR(A1:E10)-SATIR(A1)+1));0);0)))

yazıp direk enter tuşuna basmadan CTRL+SHIFT+ENTER tuşlarına birlikte basınız.

İçerisinde 100 geçen veri var ise bunun adresi için.


=HÜCRE("address";İNDİS(A1:E10;MİN(EĞER(A1:E10=100;SATIR(A1:E10)-SATIR(A1)+1));KAÇINCI(100;İNDİS(A1:E10;MİN(EĞER(A1:E10=100;SATIR(A1:E10)-SATIR(A1)+1));0);0)))

yazıp direk enter tuşuna basmadan CTRL+SHIFT+ENTER tuşlarına birlikte basınız.

İçerisinde metin geçen veri var ise (NECDET gibi) bunun adresi için.

=HÜCRE("address";İNDİS(A1:E10;MİN(EĞER(A1:E10="NECDET";SATIR(A1:E10)-SATIR(A1)+1));KAÇINCI("NECDET";İNDİS(A1:E10;MİN(EĞER(A1:E10="NECDET";SATIR(A1:E10)-SATIR(A1)+1));0);0)))

yazıp direk enter tuşuna basmadan CTRL+SHIFT+ENTER tuşlarına birlikte basınız.
 
Alternatif olarak aşağıdaki formülleride deneyebilirsiniz.

Maksimum değerin adresini bulmak için;

=ADRES(TOPLA.ÇARPIM(($A$1:$E$10=MAK($A$1:$E$10))*(SATIR($A$1:$E$10)));TOPLA.ÇARPIM(($A$1:$E$10=MAK($A$1:$E$10))*(SÜTUN($A$1:$E$10)));4)

Minimum değerin adresini bulmak için;

=ADRES(TOPLA.ÇARPIM(($A$1:$E$10=MİN($A$1:$E$10))*(SATIR($A$1:$E$10)));TOPLA.ÇARPIM(($A$1:$E$10=MİN($A$1:$E$10))*(SÜTUN($A$1:$E$10)));4)
 
Ekli dosyada

=SÜTUN(DOLAYLI(I2))
=SATIR(DOLAYLI(I2))

yazarsanızda verinin bulunduğu sütun ve satır numarasını bulmuş olursunuz
 
Yardımları olan herkese teşekkür ederim iyi çalışmalar.........
 
Bu bahsetmiş olduğunuz ctrl+shift+enter işlemi ne işe yarıyor?
Yani normal enterdan ne farkı var?
 
Excel Yardımından alınan tanımlama:

Dizi formülünü (dizi formülü: Bir veya daha fazla veri kümesi üzerinde birden çok hesaplama yapan ve tek bir sonuç veya birden çok sonuç döndüren bir formül. Dizi formülleri kaşlı ayraçlar { } arasına alınır ve CTRL+ÜSTKRKT+ENTER tuşlarına basılarak girilir.) içeren hücreyi tıklatın.

Detay bilgiyi Excel yardımından alabilirsiniz.
 
Geri
Üst