En büyük olan sayıyı başka sayfaya yazdırma nasıl yapılır

vakyn

Altın Üye
Katılım
11 Ağustos 2023
Mesajlar
94
Excel Vers. ve Dili
Microsoft 365 Tr 64 Bit
Altın Üyelik Bitiş Tarihi
29-11-2024
Merhaba değerli arkadaşlar,

excel 1. sekmem de AO:AO sütunumda
"0300/00106" yazıyor
en son bunu yazmışım mesela bugün 100 sayı arttı "0300/00206" oldu diyelim
en büyüğünü başka bir sekmede A:A sütununa yazdırabilir miyim.
 

AdemCan

Altın Üye
Destek Ekibi
Katılım
1 Eylül 2008
Mesajlar
1,386
Excel Vers. ve Dili
2019 TR
Merhaba, kayıtlarınız sıralı olarak devam ediyorsa, en son kayıt edilen veriyi
Kod:
=ARA(2;1/(Sayfa2!AO:AO<>"");Sayfa2!AO:AO)
formülü ile alabilirsiniz. Not: Kayıtlar Sayfa2 de olarak varsayılmıştır.
 

MusaPEKEL

Altın Üye
Katılım
29 Ağustos 2016
Mesajlar
65
Excel Vers. ve Dili
2013
Altın Üyelik Bitiş Tarihi
16-01-2027
Bu kod, "Sayfa1" adlı ilk sekmedeki AO sütunundaki en büyük değeri "Sayfa2" adlı ikinci bir sekmedeki A1 hücresine yazacaktır.

Kod:
Sub EnBuyukDegeriYazdir()
    Dim ws1 As Worksheet, ws2 As Worksheet
    Dim enBuyukDeger As Double
    
    ' Çalışma kitabındaki ilgili sayfaları belirtin
    Set ws1 = ThisWorkbook.Sheets("Sayfa1") ' "Sayfa1" kısmını kendi sayfa adınıza göre değiştirin
    Set ws2 = ThisWorkbook.Sheets("Sayfa2") ' "Sayfa2" kısmını en büyük değeri yazdırmak istediğiniz sayfa adına göre değiştirin
    
    ' AO sütunundaki en büyük değeri bulun
    enBuyukDeger = WorksheetFunction.Max(ws1.Range("AO:AO"))
    
    ' En büyük değeri başka bir sayfaya yazdırın
    ws2.Range("A1").Value = enBuyukDeger
End Sub
 

AdemCan

Altın Üye
Destek Ekibi
Katılım
1 Eylül 2008
Mesajlar
1,386
Excel Vers. ve Dili
2019 TR
Merhaba @MusaPEKEL Bey küçük bir bilgilendirme yapmak için yazıyorum.
Paylaştığınız kod sayısal verilerde işlem yapar ancak ilk mesajda belirtilen 0300/00106 gibi veriler sayısal olmadığı için Max fonksiyonu büyük olan değeri bulamaz, Max ile işlem yapmak için 0300/00106 verisini parçalayıp sondaki değere göre işlem yapmak gerekir.

Örnek olarak;
Not: 0300/ kısmı sabit olarak varsayılmıştır.
Kod:
Sub test()
x = 0
ReDim dizi(x)
    For i = 1 To Range("AO" & Rows.Count).End(3).Row
    ReDim Preserve dizi(x)
        dizi(x) = Right(Cells(i, "AO"), 5) * 1
        x = x + 1
    Next i
    
buyuk = WorksheetFunction.Max(dizi)

    If Len(buyuk) < 5 Then
        sıfır = WorksheetFunction.Rept(0, 5 - Len(buyuk))
        buyuk = "0300/" & sıfır & buyuk
    Else
        buyuk = "0300/" & buyuk
    End If
    
Sayfa2.Range("A1") = buyuk
End Sub
 
Son düzenleme:
Üst