Dizideki tarihi "KAÇINCI" ile bulmak

Muhammet Okumuş

Destek Ekibi
Destek Ekibi
Katılım
28 Eylül 2007
Mesajlar
4,025
Excel Vers. ve Dili
2013 Türkçe
Arkadaşlar merhaba,
Diziye aldığım tarihi kaçıncı fonksiyonu görmüyor. Yardımcı satır kullanarak tarihi dayıya çevirdiğim zaman sonuca ulaşıyorum. Ama bunu yapmak istemiyorum.
Sub Düğme1_Tıklat()
liste = Range("B4:D53").Value
numara = Range("F4").Value
tarih = Range("G3:M3").Value
Dim tablo(1 To 1, 1 To 7)

For i = 1 To UBound(liste)
If liste(i, 2) = numara Then

süt = Application.Match(liste(i, 1), tarih, 0)
tablo(1, süt) = liste(i, 3)

End If
10
Next
Range("G4").Resize(1, 7) = tablo
End Sub
 

Ekli dosyalar

Katılım
18 Ocak 2019
Mesajlar
234
Excel Vers. ve Dili
Office 2013
Merhaba @Muhammet Okumuş

Bu şekilde deneyebilir misiniz.

C#:
Sub Düğme1_Tıklat()
liste = Range("B4:D53").Value
numara = Range("F4").Value
Dim tablo(1 To 1, 1 To 7)
For i = 1 To UBound(liste)
    If liste(i, 2) = numara Then
        Set bul = Range("G3:M3").Find(liste(i, 1), , xlValues, xlPart)
        If Not bul Is Nothing Then tablo(1, bul.Column - 6) = liste(i, 3)
    End If
10
Next
Range("G4").Resize(1, 7) = tablo
End Sub
 

Korhan Ayhan

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

C++:
Sub Düğme1_Tıklat()
liste = Range("B4:D53").Value
numara = Range("F4").Value
tarih = Range("G3:M3").Value2
Dim tablo(1 To 1, 1 To 7)

For i = 1 To UBound(liste)
If liste(i, 2) = numara Then

süt = Application.Match(CLng(liste(i, 1)), tarih, 0)
tablo(1, süt) = liste(i, 3)

End If
10
Next
Range("G4").Resize(1, 7) = tablo
End Sub
 

Muhammet Okumuş

Destek Ekibi
Destek Ekibi
Katılım
28 Eylül 2007
Mesajlar
4,025
Excel Vers. ve Dili
2013 Türkçe
Sn Hepgel, cevabınız için teşekkür ederim ama kodlar sonuç bulmadı.

Sn Korhan Bey size de teşekkür ederim. Kodlar sonucu buluyor.
Bu konuya bağlı olarak bir sorum olacaktı daha önce de karşılaştığım bir sorundu. Match fonksiyonu tek hücreli verilerde hata veriyor. Burda tarih aralığı sabit. Bazen bu aralık değişken olabiliyor. Tarih değişkenini "G3:G3" yaptığımızda hata veriyor. Ama G3:H3 yaptığımızda hata olmuyor. (Döngüyü 1 to 2 yaptım) Daha önceki çalışmalarımda ekstradan boş bir hücre ilave ederek sorunumu çözmüştüm.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,765
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Tek hücre olunca dizi özelliği oluşmuyor. Bu sebeple hata alıyorsunuz. En pratik yolu minimum iki hücre kullanmaktır.
 

Muhammet Okumuş

Destek Ekibi
Destek Ekibi
Katılım
28 Eylül 2007
Mesajlar
4,025
Excel Vers. ve Dili
2013 Türkçe
Tamam teşekkür ederim. O zaman son+1 şeklinde değiştirmek gerekiyor.
 
Üst