makro neden hata veriyor

Katılım
2 Şubat 2007
Mesajlar
194
Excel Vers. ve Dili
Office 2007 Tr
Altın Üyelik Bitiş Tarihi
31/03/2022
arkadaşlar merhaba

ekteki makroda hata veriyor.bence makro doğru sanki ama anlamadım hatayı.yardımcı olursanız sevinirim.
 

Ekli dosyalar

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,239
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Çünkü k değeri nothing.
Siz o zaman nothing + n topluyorsunuz.Hata oluşuyor.K nin içinde sayısal bir değer olmalıdır.:cool:
 
Katılım
2 Şubat 2007
Mesajlar
194
Excel Vers. ve Dili
Office 2007 Tr
Altın Üyelik Bitiş Tarihi
31/03/2022
Teşekürlerler Evren Bey

Peki nasıl bu hatayi düzeltebiliriz? Size zahmet olmayacaksa yardımcı olurmusunuz.
 
Katılım
27 Temmuz 2004
Mesajlar
719
Excel Vers. ve Dili
Excel 2003 Tr
"For n=1 to 5" döngüsünün ne işe yaradığını anlayamadım, bu döngüyü neden kullandığınızı açıklayabilir misiniz?
 
Katılım
2 Şubat 2007
Mesajlar
194
Excel Vers. ve Dili
Office 2007 Tr
Altın Üyelik Bitiş Tarihi
31/03/2022
kontrol sayfasında a2 hücresinde faturanın ne zaman düzenlendiği yazmaktadır.muhasebe sayfasında ise hangi tarihlerde işlenmektedir(7 günlük işlenmektedir).yapmak istediğim 07/01/2008 tarihinde düzenlenen fatura 01/01/2008-07/01/2008 tarihler arasında işlenmiştir.muhasebe sayfasında f ve g sutununda belirtilmektedir.benim yapmak istediğim kontrol sayfasına ,muhasebe sayfasında f ve g sununlarını karşılaştırarak kontrol sayfasınını j sutununa muhasebe sayfasının a sutununu getirmesini ve kontrol sayfasının k sutununa muhasebe sayfasından c sutununu getirmesini.n döngüsüne gelinse 7 günlük işlediğimizden 1 gün + 5 gün eder 6 gün ,7'inci gün zaten de var .umarım anlatabilmişimdir.
 
Katılım
2 Şubat 2007
Mesajlar
194
Excel Vers. ve Dili
Office 2007 Tr
Altın Üyelik Bitiş Tarihi
31/03/2022
lütfen yardım.yarın raporlarımı yetiştirmem gerekiyor.şimdiden teşekür ederim herkese
 
Katılım
27 Temmuz 2004
Mesajlar
719
Excel Vers. ve Dili
Excel 2003 Tr
f ve g sütunlarına göre ayrı ayrı neden kontrol yapıyorsunuz, sadece g sütununa göre kontrol etseniz yeterli gelmiyor mu? Yapmak istediğiniz şey kontrol sayfasındaki tarihlerin muhasebe sayfasındaki f ve g sütunlarındaki hangi tarih aralığına denk geldiğini bulup ona göre işlem yapmak mı?
 
Katılım
2 Şubat 2007
Mesajlar
194
Excel Vers. ve Dili
Office 2007 Tr
Altın Üyelik Bitiş Tarihi
31/03/2022
zahmet olmayacaksa bir örnek düzenleyebilirmisini?
 
Katılım
27 Temmuz 2004
Mesajlar
719
Excel Vers. ve Dili
Excel 2003 Tr
Bu şekilde dener misiniz?
Sub madde_no_tarih_getir_2()
Set s1 = Sheets("KONTROL")
Set s2 = Sheets("muhasebe")
For i = 2 To s1.[a65536].End(3).Row
If s1.Cells(i, "a") <> "" Then
Set m = s2.Range("g2:g65536").Find(s1.Cells(i, "a").Value, LookAt:=xlWhole)
If Not m Is Nothing Then
s1.Cells(i, "j").Value = m.Offset(0, -5)
s1.Cells(i, "k").Value = m.Offset(0, -3)
End If
End If
Next i
End Sub
 
Katılım
2 Şubat 2007
Mesajlar
194
Excel Vers. ve Dili
Office 2007 Tr
Altın Üyelik Bitiş Tarihi
31/03/2022
Sayın Janveljan
Eğer kontrol sayfasındaki fatura tarihimiz mesela 03/01/2008 olur ise o zaman makro veri bulamayacak.bu yüzden bem f ve g sutunlarını kontrol etmesini istemiştim
 
Katılım
27 Temmuz 2004
Mesajlar
719
Excel Vers. ve Dili
Excel 2003 Tr
İstediğiniz sonucu veren bir çalışma yaptım, bende gayet iyi çalıştı umarım sizde de çalışır.
Kod:
Sub madde_no_tarih_getir_2()
Set s1 = Sheets("KONTROL")
Set s2 = Sheets("muhasebe")
For i = 2 To s1.[a65536].End(3).Row
    For j = 3 To s2.[f65536].End(3).Row
        If CDate(s1.Cells(i, "a")) >= CDate(s2.Cells(j, "f")) And CDate(s1.Cells(i, "a")) <= CDate(s2.Cells(j, "g")) Then
            s1.Cells(i, "j") = s2.Cells(j, "a")
            s1.Cells(i, "k") = s2.Cells(j, "c")
            GoTo json
        End If
    Next j
json:
Next i
End Sub
 
Üst