vba , düşeyara, combobox, textbox

walabi

Altın Üye
Katılım
22 Eylül 2012
Mesajlar
680
Excel Vers. ve Dili
excel 2010

excel 2013
Altın Üyelik Bitiş Tarihi
06-08-2025
Merhaba,

Aşağıdaki vba kodunda nerde , nasıl bir hata yaptığımı anlayabilir ve düzeltme desteği talep edebilirmiyim. Yapmaya çalıştığım şey şu. STOK adlı excel sayfasının F sütununa BARKOD adlı excel sayfasından combobox5 ile bir barkod numarası çekiyorum. G sütununa ise ilgili barkod numarasına ait ürün adını getirmeye çalışıyorum. Bunu düşer ara ile yapabileceğimi düşündüm ve aşağıdaki iki sıra kodu bu düşünce ile yaptım. Son satırda vermekte. Burada yaptığım hata nedir ve kod nasıl olmalı.


Barkod = ComboBox5.Value

'Sheets("STOK").Range("G" & Bos_Satir_ST).Value = Application.WorksheetFunction.VLookup(Barkod, Sheets("BARKOD").Range("B:C"), 2, 0)








Private Sub CommandButton1_Click()



Son_Dolu_Satir_CA = Sheets("CARİ").Range("A1048576").End(xlUp).Row
Bos_Satir_CA = Son_Dolu_Satir_CA + 1

Son_Dolu_Satir_AL = Sheets("ALIŞ").Range("A1048576").End(xlUp).Row
Bos_Satir_AL = Son_Dolu_Satir_AL + 1

Son_Dolu_Satir_SA = Sheets("SATIŞ").Range("A1048576").End(xlUp).Row
Bos_Satir_SA = Son_Dolu_Satir_SA + 1

Son_Dolu_Satir_ST = Sheets("STOK").Range("A1048576").End(xlUp).Row
Bos_Satir_ST = Son_Dolu_Satir_ST + 1




' ALIŞ Girişi
Sheets("ALIŞ").Range("A" & Bos_Satir_AL).Value = _
Application.WorksheetFunction.Max(Sheets("ALIŞ").Range("A:A")) + 1

Sheets("ALIŞ").Range("B" & Bos_Satir_AL).Value = ComboBox4.Text
Sheets("ALIŞ").Range("C" & Bos_Satir_AL).Value = TextBox1.Text
Sheets("ALIŞ").Range("D" & Bos_Satir_AL).Value = TextBox2.Text
Sheets("ALIŞ").Range("E" & Bos_Satir_AL).Value = TextBox8.Text

' STOK girişi
Sheets("STOK").Range("A" & Bos_Satir_ST).Value = _
Application.WorksheetFunction.Max(Sheets("STOK").Range("A:A")) + 1 'ID

Sheets("STOK").Range("B" & Bos_Satir_ST).Value = ComboBox4.Text
Sheets("STOK").Range("C" & Bos_Satir_ST).Value = TextBox1.Text
Sheets("STOK").Range("D" & Bos_Satir_ST).Value = TextBox2.Text
Sheets("STOK").Range("E" & Bos_Satir_ST).Value = ComboBox2.Text
Sheets("STOK").Range("F" & Bos_Satir_ST).Value = ComboBox5.Text
Sheets("STOK").Range("H" & Bos_Satir_ST).Value = TextBox3.Text
Sheets("STOK").Range("I" & Bos_Satir_ST).Value = TextBox4.Text
Sheets("STOK").Range("J" & Bos_Satir_ST).Value = TextBox5.Text
Sheets("STOK").Range("K" & Bos_Satir_ST).Value = TextBox6.Text
Sheets("STOK").Range("L" & Bos_Satir_ST).Value = ComboBox3.Text
Sheets("STOK").Range("M" & Bos_Satir_ST).Value = TextBox7.Text
Sheets("STOK").Range("N" & Bos_Satir_ST).Value = TextBox8.Text

Barkod = ComboBox5.Value

'Sheets("STOK").Range("G" & Bos_Satir_ST).Value = Application.WorksheetFunction.VLookup(Barkod, Sheets("BARKOD").Range("B:C"), 2, 0)








End Sub
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
DÜŞEYARA kısmında hata veriyorsa aranan veri tabloda yoktur muhtemelen.
 

walabi

Altın Üye
Katılım
22 Eylül 2012
Mesajlar
680
Excel Vers. ve Dili
excel 2010

excel 2013
Altın Üyelik Bitiş Tarihi
06-08-2025
DÜŞEYARA kısmında hata veriyorsa aranan veri tabloda yoktur muhtemelen.
İlgili dosyayı ekledim, aranan veri tabloda var , ama sanırım bir mantık hatası yapmaktayım, kısaca hata nedenini bulamadım
 

Ekli dosyalar

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,330
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Tanımlama yapmayı deneyiniz.

Dim Barkod As Long
 

YUSUF44

Destek Ekibi
Destek Ekibi
Katılım
4 Ocak 2006
Mesajlar
12,073
Excel Vers. ve Dili
İş : Ofis 365 - Türkçe
Ev: Ofis 365 - Türkçe
Korhan Bey'in belirttiği düzeltmeyi yaparsanız sorun çıkmıyor. Sorunun nedeni ise dosyanızdaki barkodlar sayı biçiminde iken userformda comboboxla çağırınca artık metin biçimine dönüşüyor. Düşeyara fonksiyonu barkodu metin olarak tabloda arıyor ama dosyadaki veriniz sayı biçiminde olduğu için barkodu bulamıyor.
 
Üst