Combobox'ta seçilen veriye göre diğer combobox'ı pasif hale getirmek

Katılım
19 Mart 2010
Mesajlar
144
Excel Vers. ve Dili
Office 365 İngilizce
Altın Üyelik Bitiş Tarihi
20-01-2024
Userformda stok adını seçtiğimde stok tablosundan baksın, eğer PL değeri doğru ise Müşteri ismini yine stok tablosundan seçip o comboyu pasif hale getirsin, yani değişikliğe izin vermesin istiyorum. Stok tablosunda her ürünün PL sütununda DOĞRU veya YANLIŞ ibaresi var. Kodu aşağıdaki şekilde yaptım ama çalışmıyor. Nerede hata yapıyorum?

237917

Kod:
Private Sub cmbstokadicikis_Change()

Dim pl As String
Dim stok As Worksheet
Set stok = Sheets("Stoklar")

pl = WorksheetFunction.VLookup(cmbstokadicikis.Value, stok.Range("D:I"), 6, 0)

    If pl = DOĞRU Then

    cmbmustericikis.Value = WorksheetFunction.VLookup(cmbstokadicikis.Value, stok.Range("D:j"), 7, 0)
    cmbmustericikis.Enabled = False
    Else
    cmbmustericikis.Value = ""
    cmbmustericikis.Enabled = True

    End If
    
cmbbirimcikis.Value = WorksheetFunction.VLookup(cmbstokadicikis, Sheets("Stoklar").Range("d:e"), 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
Örnek dosya olsa iyi olurdu.

Kodlara baktığımda pl değişkenini "string" yani "metin" olarak tanımlamışsınız ama kod içinde doğrudan DOĞRU olarak kullanmışsınız.

Ya "DOĞRU" şeklinde tırnak içinde deneyin ya da True olarak deneyin. True olarak denerseniz tanımlamayı da ona göre değiştirmeniz gerekir (galiba boolean olması gerekiyor).
 
Katılım
19 Mart 2010
Mesajlar
144
Excel Vers. ve Dili
Office 365 İngilizce
Altın Üyelik Bitiş Tarihi
20-01-2024
Örnek dosya olsa iyi olurdu.

Kodlara baktığımda pl değişkenini "string" yani "metin" olarak tanımlamışsınız ama kod içinde doğrudan DOĞRU olarak kullanmışsınız.

Ya "DOĞRU" şeklinde tırnak içinde deneyin ya da True olarak deneyin. True olarak denerseniz tanımlamayı da ona göre değiştirmeniz gerekir (galiba boolean olması gerekiyor).
Hocam tırnak içinde de denedim olmadı maalesef. Stok tablosuna girişi yine userform ile yapıyorum. PL sütunundaki değeri de checkbox'tan alıyor. Seçili ise DOĞRU yazıyor, değilse YANLIŞ yazıyor. True ya da False olarak algılamaz diye tahmin ediyorum. Dosyayı buradan değil de özelden size göndersem olur mu?
 

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
Checkboxtan alıyorsa Booleandır ve yüksek ihtimalle True ile düzelir. Denemenizi tavsiye ederim.

Dosyanızı özel verileri silerek asıl dosyanızla aynı yapıda olmak üzere paylaşabiirsiniz.
 
Katılım
19 Mart 2010
Mesajlar
144
Excel Vers. ve Dili
Office 365 İngilizce
Altın Üyelik Bitiş Tarihi
20-01-2024
Checkboxtan alıyorsa Booleandır ve yüksek ihtimalle True ile düzelir. Denemenizi tavsiye ederim.

Dosyanızı özel verileri silerek asıl dosyanızla aynı yapıda olmak üzere paylaşabiirsiniz.
Boolean ile düzeldi hocam, çok teşekkür ederim.
 
Üst