• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

is error

  • Konbuyu başlatan Konbuyu başlatan heft
  • Başlangıç tarihi Başlangıç tarihi
Katılım
3 Haziran 2005
Mesajlar
371
Merhaba
Aşağıdaki dizinde hata alıyorum, nerede hata yapıyorum?

If IsError(WorksheetFunction.VLookup(ActiveCell.Offset(0, 5).Value, Range("A!A2:CI10000"), 87, 0).Value) = False Then
ActiveCell.Offset(0, 10).Value = ""
Else
ActiveCell.Offset(0, 10).Value = WorksheetFunction.VLookup(ActiveCell.Offset(0, 5).Value, Range("A!A2:CI10000"), 87, 0)
End If
 
Son düzenleme:
.

Şeklinde deneyin.

Kod:
Dim v
v=WorksheetFunction.VLookup(ActiveCell.Offset(0, 5).Value, Range("A!A2:CI10000"), 87, 0)
If IsError(v) Then
ActiveCell.Offset(0, 10) = ""

Else
ActiveCell.Offset(0, 10) = v.Value
End If

.
 
Bu worksheetfunctionlar çok kullanılıyor.
Bunun yerine vba nın find komutunu neden kullanmıyorsunuz?
Find komutu kullanırsanız eğer aradığınız yoksa hata almazsınız.Ve hücrenin offset özellinden faydalanabilirsiniz.:cool:
 
Son düzenleme:
Çok teşekkürler, ama olmadı

Run-time error '1004'
WorksheetFunction sınıfının VLookup özelliği alınmıyor

hatası almaya devam ediyorum.


"Find" Aklıma geldi sayın orion, ama nasıl kullanacağımı çözemedim. :(

Öğrenebileceğim bir link var mı?
 
Son düzenleme:
Forumda find diye arama yapınız.
 
Aşağıdaki gibi bir kod kullanabilirsiniz.
*A sütununda arama yapıyor.
*B1 hücresindeki değeri arıyor.
*xlwhole verinin tamamını arıyor,xlpart yazarsanız içerir şeklinde arama yapabilirsiniz.range("B1").value & "*"
yazarsanız ile başlar şeklinde arayabilirsiniz.
*xlvalues,değer aradığınızı belirtirsiniz.
Kod:
Sub bul()
Set k = Sheets("deneme").Columns(1).Find(Range("B1").Value, lookat:=xlWhole, LookIn:=xlValues)
If k Is Nothing Then
MsgBox Range("B1").Value & " ismi bulunamadı"
Else
MsgBox Range("B1").Value & " ismi bulundu"
End If
End Sub
 
Teşekkürler
A kolonunda yakaladığı eşleşmeye karşık gelen 30. kolondaki (örn: AD30 da yazan değer) değeri almak istiyorum, bunun için düşeyarayı kullanmıştım.

WorksheetFunction.VLookup(ActiveCell.Offset(0, 5).Value, Range("A!A2:CI10000"), 87, 0).Value)
dizininde eğer aranan değer varsa bulup getiriyor, ama yoksa

WorksheetFunction sınıfının VLookup özelliği alınmıyor

hatası geliyor, çözemedim.
 
A kolonunda hangi değeri arıyorsunuz?Ben size find komutuyla yapacam:Hatada vermeyecek.:cool:
 
çok teşekkürler uyku tutmayacak yoksa;

aranan değer plan sayfasında ActiveCell.Offset(0, 5).Value
aramanın yapılacağı yer :Range("A!A2:A10000")

eğer değeri bulursa Range("A!CI2:CI10000") daki karşışığı yazılacak eğer A da kaşılık bulamazsa " " değeri atacak
özetle yapmak istediğim bu.
 
Linkteki dosyayı inceleyin.:cool:

DOSYAYI INDIR

Kod:
Sub arabul_59()
Dim k As Range
Range("A10").Select
Set k = Sheets("A").Range("A2:A" & Rows.Count).Find(ActiveCell.Offset(0, 5).Value, , xlValues, xlWhole)
If Not k Is Nothing Then
    ActiveCell.Offset(0, 6).Value = Sheets("A").Range("CI" & k.Row).Value
Else
    ActiveCell.Value = ""
End If
End Sub
 
çok teşekkürler, tabii ki yoktu.

Burası öyle bir platform ki, mantık dahilinde olan herşey bir şekilde çözülür.

(y)(y)(y)(y)(y)(y)(y)(y)(y)
 
Geri
Üst