Makro Hatası Hakkında

seddur

Altın Üye
Katılım
12 Nisan 2012
Mesajlar
531
Excel Vers. ve Dili
Microsoft office professional plus 2019
Altın Üyelik Bitiş Tarihi
18-12-2024
)
isim = InputBox("Aranacak Değeri Giriniz")
urun_miktari = Application.WorksheetFunction.VLookup(isim, Sayfa2.Range("A1:I1000"), 7, False)
Sayfa3.Cells(2, 2) = urun_miktari
MsgBox "Aranan Değer B2 Hücresine Yazılmıştır.", vbInformation, "..:: Ömür ÇAKIR ::.."

Yukarıya kopyaladığım ve Kullanmakta olduğum düşeyara formülünün kodlarını bugüne kadar sorunsuz bir şekilde çalıştırıyordum.
Fakat her nedense yeni sayfaya veya dosyaya kopyaladığımda 2. satır hatası veriyor.Sebebini çözemedim.
Dosya bozulduğundan dolayı yenisini yapmam gerekiyor.Yardımlarınızı bekliyorum.
 

Orion1

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

Ofis-2010-TR 32 Bit
Vlookup worksheetfunctionu bulamazsa hata verir.
Forumda find diye arama yapınız.
 

Orion1

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

Ofis-2010-TR 32 Bit
A sütununda arar.G sütunundaki değeri yazar.
Buyurun.Ben kodları yazdım.:cool:
Kod:
Dim k As Range
isim = InputBox("Aranacak Değeri Giriniz")
Set k = Sheets("Sayfa2").Range("A:A").Find(isim, , xlValues, xlWhole)
If Not k Is Nothing Then
    Sayfa3.Cells(2, 2).Value = k.Offset(0, 6).Value
    Else
    MsgBox "İsim : " & isim & " bulunamadı.İşlem gerçekleşmedi", vbCritical, "UYARI"
    Exit Sub
End If
MsgBox "Aranan Değer B2 Hücresine Yazılmıştır.", vbInformation, "..:: Ömür ÇAKIR ::.."
 
Son düzenleme:

seddur

Altın Üye
Katılım
12 Nisan 2012
Mesajlar
531
Excel Vers. ve Dili
Microsoft office professional plus 2019
Altın Üyelik Bitiş Tarihi
18-12-2024
A sütununda arar.G sütunundaki değeri yazar.
Buyurun.Ben kodları yazdım.:cool:
Kod:
Dim k As Range
isim = InputBox("Aranacak Değeri Giriniz")
Set k = Sheets("Sayfa2").Range("A:A").Find(isim, , xlValues, xlWhole)
If Not k Is Nothing Then
    Sayfa3.Cells(2, 2).Value = k.Offset(0, 6).Value
    Else
    MsgBox "İsim : " & isim & " bulunamadı.İşlem gerçekleşmedi", vbCritical, "UYARI"
    Exit Sub
End If
MsgBox "Aranan Değer B2 Hücresine Yazılmıştır.", vbInformation, "..:: Ömür ÇAKIR ::.."
Hocam sağol çok makbule geçti.Kod çalışıyor
 
Katılım
6 Mart 2005
Mesajlar
6,233
Excel Vers. ve Dili
Excel Vers. ve Dili:
Office 2016 TR 64 Bit
Altın Üyelik Bitiş Tarihi
22/12/2022
Eğersay ile önce kontrol yaparak hatadan kurtulabilirsiniz.Örnek kod.Deneyiniz.
Kod:
Sub duşeyara()
Dim s2 As Worksheet
Set s2 = Sheets("Sayfa2")
isim = InputBox("Aranacak Değeri Giriniz")
If isim = "" Then
MsgBox "Değer girmediniz", vbInformation, "..:: Ömür ÇAKIR ::.."
Exit Sub
End If
knt = WorksheetFunction.CountIf(s2.Range("A1:A1000"), isim)
If knt = 0 Then
MsgBox "ürün yok", vbInformation, "..:: Ömür ÇAKIR ::.."
Exit Sub
End If
urun_miktari = Application.WorksheetFunction.VLookup(isim, s2.Range("A1:I1000"), 7, False)
Sayfa1.Cells(2, 2) = urun_miktari
MsgBox "işlem tamam", vbInformation, "..:: Ömür ÇAKIR ::.."
End Sub
 

Orion1

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

Ofis-2010-TR 32 Bit
Find komutunu kullanırsanız daha avantajlı olursunuz.Buluduğunuz hücreye offset uygulayabilirsiniz.
Örnek : k.offset(1,1).value = "test"
Worksheetfunction Vlookup göre daha esnektir.:cool:
 
Son düzenleme:
Üst