• DİKKAT

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

B sütunundaki fiyatları F sütununda yerine gönderme

  • Konbuyu başlatan Konbuyu başlatan izcik
  • Başlangıç tarihi Başlangıç tarihi
Katılım
18 Mayıs 2009
Mesajlar
1,184
Excel Vers. ve Dili
Excel 2016 Türkçe
Merhabalar sayın uzmanlarım.

Uzmanlarımdan edindiğim kodların tamamını hemen her gün kullanıyorum. Ve ne kadar teşekkür etsek, saygı duysak azdır.

Diyelimki A sütununda sırayla ürün kodları yazılı

ÜRÜN1
ÜRÜN2
ÜRÜN3
....
.... şeklinde uzayıp gidiyor




B sütununda ise sırayla fiyatları yazılı
2,1
2,2
2,3
...... diye gidiyor.

A ve B sütunundakiler kayıtlı ve değişmeyen bilgilerim olarak düşünelim

E sütununda ise ürün kodları var fakat, birden fazla tekrarı yapılmış ve karışık halde

Örnek E sütununda

ÜRÜN1
ÜRÜN1
ÜRÜN1
ÜRÜN3
ÜRÜN3
ÜRÜN3
ÜRÜN3
ÜRÜN3
ÜRÜN2
ÜRÜN2


Şuna ihtiyacım var.

Makro düğmesine basınca, F sütununa ürünlerin fiyatları gelsin

.................

Çok basit şekilde tekrar soracak olursam,
A sütununda ürün kodları
yanındaki B sütununda ürün fiyatları var. (BU İKİ SÜTUN KALICI BİLGİ)
Ve E sütununda yine ürün kodları var, ama birden fazla tekrarlı ve karışık haldeler. (Karışıklık önemli değil ama birden fazla tekrarlı olması zaten problemin kendisi)
Düğmeye basıldığında F sütununa ürünlerin fiyatlarının gelmesini istiyorum. Herkese kolay gelsin, saygılar sunarım.
 
İşinizi görür inşaALLAH

Kod:
Private Sub CommandButton1_Click()

    ActiveCell.FormulaR1C1 = "=VLOOKUP(RC[-1],C[-5]:C[-4],2,0)"
    Range("F1").Select
    Selection.AutoFill Destination:=Range("F1:F9"), Type:=xlFillDefault
    Range("F1:F9").Select
End Sub
 
Hemen deniyorum sonucu bildireceğim Samet Can uzmanım
 
Samet Can uzmanım, çok teşekkürler. Oldu gibi, fakat bir minik düzeltme yapmamız lazım, F9a kadar değil de , çok aşşağılara kadar taraması lazım. Yani en az 6000 satır gibi. Veya sonuna kadar (65536 satır)

Saygılar
 
Rica ederim.Ayrıca uzmanım demezseniz çok memnun olurum. Aşağıda kodu paylaştım F21 yazan yeri istediğiniz gibi çoğaltabilirsiniz

Kod:
ActiveCell.FormulaR1C1 = "=IFERROR(VLOOKUP(RC[-1],C1:C2,2,0),""ÜRÜNYOK"")"
    Range("F1").Select
    Selection.AutoFill Destination:=Range("F1:F21"), Type:=xlFillDefault
    Range("F1:F21").Select
 
Estafirullah, az buçuk bildiğim konu denk geldi, yoksa cahilim fazla bilgim yok.
Güzel düşüncenizden ötürü teşekkür ederim
 
Kıymetli arkadaşlarım, yukarıdaki sorumun bir de düşeyara formülü gibi bir formülü vardı. Rica etsem ivedilikle yazarmısınız. Aynı soru olduğu için yeni konu açıp konu kirliliği olmasın diye bu konunun altına yazdım.
 
Zaten yukarıdaki sorununuz Düşeyara formülü ile halledilmiş. Makroyu çalıştırdığınız zaman F1:F21 aralığına Düşeyara formülünü yazar, oradan bakabilirsiniz.
 
Nerede üstadım düşeyara, ben göremedim
 
Uzmanlarım ihtiyacım olan formülü yazar mısınız? En üstteki soruma ait olan "düşeyaralı" formülü.
.

A sütununda ürün kodları var

B sütununda bu ürünlerin fiyatları var.

E sütununda da ürün kodları var, fakat karışık halde ve birden fazlalar

İstediğim şey F sütununa formülü yazıp aşşağı çekince (kopyalayınca) , ürünlerin B sütunundaki fiyatları ne ise, onlar F sütununa gelsin. Saygılar.
 
F2 için formülünüzü şu şekilde deneyiniz:
Kod:
=DÜŞEYARA(E[COLOR="Red"]2[/COLOR];A:B;2;0)

Kod:
=EĞERHATA(DÜŞEYARA(E[COLOR="Red"]2[/COLOR];A:B;2;0);"Ürün Bulunamadı")
 
Üstteki formül oldu kıymetli mucit77 :) alttakini bile denemeden hemen teşekkür etmek istedim. Teşekkür ederim sağolun varolun :)
Hemen alttakini de deneyeyim
 
Alttaki hata olması durumunda #YOK hatası göstermesin diye: Hata olursa "Ürün Bulunamadı" yazar.
 
Çok teşekkür ederim hem ilginiz hem verdiğiniz doğru cevap için
 
Yanlış cevap vermişim, dikkate almayın.
 
Canınız sağolsun kıymetli Yusuf44 , cevabınız hiç yansımadı. Az yardımınızı desteğinizi görmedik. Sağolun varolun
 
Geri
Üst