Kodla Satır Bulma

sbayyigit

Altın Üye
Katılım
11 Aralık 2004
Mesajlar
419
Excel Vers. ve Dili
Ms Office Pro Plus 2019
Altın Üyelik Bitiş Tarihi
23-02-2026
Merhaba arkdaşlar.
Ek'deki excel sayfa1 de onlarca satırdan oluşan bir tablom var. Bu tablodaki satırlarda bulunan liste sürekli değişiyor. Örneğin Dolar bazen 2. satırda olurken bazen 10. satırda olabiliyor. Sabit olduğu zaman aşağıdaki kodlarla alış ve satış fiyatlarını alabiliyorum.

has_satis= Sheets("sayfa1").Range("c3").Value

has_alis = Sheets("sayfa1").Range("b3").Value

dolar_alis=Sheets("sayfa1").Range("b2").Value

dolar_satis=Sheets("sayfa1").Range("c2").Value



Yukarıdaki vba kodları satır sayıları sabitken kullandığım kodlar. Satır numaraları değiştiğinde Örneğin DOLAR 2. değil de 5 satıra geçtiğinde "dolar_alis" sabitini nasıl değiştirmem gerekecek.
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,608
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

Değişken satırlar için fonksiyonla değerleri alabilirsiniz.

C++:
Sub Test()
    Dim Dolar_Alis As Double
    
    Dolar_Alis = WorksheetFunction.VLookup("DOLAR", Range("A:G"), 2, 0)
End Sub
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,272
Excel Vers. ve Dili
2019 Türkçe
Merhaba.

Aşağıdaki kod ile yapabilirsiniz.
Kod:
Sub Test()
    Dim DolarSatir As Integer
    Dim HasSatir As Integer
    Dim EUROSatir As Integer
    Dim ONSSatir As Integer
    
    With WorksheetFunction
        DolarSatir = .Match("DOLAR", Range("A:A"), 0)
        HasSatir = .Match("HAS ALTIN", Range("A:A"), 0)
        EUROSatir = .Match("EURO", Range("A:A"), 0)
        ONSSatir = .Match("ONS", Range("A:A"), 0)
    End With
    With Sheets("sayfa1")
        has_satis = .Cells(HasSatir, "C").Value
        has_alis = .Cells(HasSatir, "B").Value
        Dolar_alis = .Cells(DolarSatir, "B").Value
        Dolar_satis = .Cells(DolarSatir, "C").Value
        Euro_satis = .Cells(EUROSatir, "C").Value
        Euro_alis = .Cells(EUROSatir, "B").Value
        Ons_alis = .Cells(ONSSatir, "B").Value
        Ons_satis = .Cells(ONSSatir, "C").Value
    End With
End Sub
 

sbayyigit

Altın Üye
Katılım
11 Aralık 2004
Mesajlar
419
Excel Vers. ve Dili
Ms Office Pro Plus 2019
Altın Üyelik Bitiş Tarihi
23-02-2026
Korhan Hocam ve Ali Hocam her ikinize de ayrı ayrı teşekkürler.
İyi ki varsınız.
 
Üst