Combobox ta değişiklik olanlar.

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
3,043
Excel Vers. ve Dili
Office 2013 İngilizce
Merhaba,
Bir UserForm' da 10 adet Combobox mevcut (Combobox1, Combobox2,......, Combobox10)

Userform açıldıktan sonra, kapatılana kadar bunların hangisinde değişiklik yapıldı? Hangilerinde bir değişiklik yapılmadığını öğrenmenin pratik bir yolu var mıdır?

Özetle: "Combobox1", "Combobox2", "Combobox5", "Combobox8" 'de değişiklik yapıldı, diğerlerine dokunulmadı diye bir rapor almak istiyorum.

Class Module ile bu işlem öğrenilebilir mi?

Kod:
Private Sub ComboBox1_Change()
 x=ComboBox1.value
End Sub
Teşekkürler,

iyi Pazarlar.
 

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
Userforma bir textbox ekleyip, initialize kodlarında bu textbox içeriğini boşaltıp, sonra da örneğini verdiğiniz gibi combobox_change olaylarına bu textbox içeriğini değiştirme satırını ekleyebilirsiniz:


PHP:
Private Sub ComboBox1_Change()
Textbox1.Text = Textbox1.Text & chr(10) & "Combobox1: " & ComboBox1.value
End Sub
İsterseniz bu textbox'ı gizler, userform kapama işleminden sonra textbox içeriğini msgbox olarak gösterebilirsiniz.
 

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
3,043
Excel Vers. ve Dili
Office 2013 İngilizce
Userforma bir textbox ekleyip, initialize kodlarında bu textbox içeriğini boşaltıp, sonra da örneğini verdiğiniz gibi combobox_change olaylarına bu textbox içeriğini değiştirme satırını ekleyebilirsiniz:


PHP:
Private Sub ComboBox1_Change()
Textbox1.Text = Textbox1.Text & chr(10) & "Combobox1: " & ComboBox1.value
End Sub
İsterseniz bu textbox'ı gizler, userform kapama işleminden sonra textbox içeriğini msgbox olarak gösterebilirsiniz.
Yusuf bey teşekkürler,
bu şekilde tüm Combobox' lara bu kodları yazmak gerekecek, bunun pratik bir yolu var mı diye araştırıyordum

iyi çalışmalar.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,191
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Buradaki amaç nedir?
 

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
Merhaba,
Bir UserForm' da 10 adet Combobox mevcut (Combobox1, Combobox2,......, Combobox10)

Userform açıldıktan sonra, kapatılana kadar bunların hangisinde değişiklik yapıldı? Hangilerinde bir değişiklik yapılmadığını öğrenmenin pratik bir yolu var mıdır?

Özetle: "Combobox1", "Combobox2", "Combobox5", "Combobox8" 'de değişiklik yapıldı, diğerlerine dokunulmadı diye bir rapor almak istiyorum.

Class Module ile bu işlem öğrenilebilir mi?

Kod:
Private Sub ComboBox1_Change()
x=ComboBox1.value
End Sub
Teşekkürler,

iyi Pazarlar.
Öğrenilir.:cool:
 

Erdem Akdemir

Destek Ekibi
Destek Ekibi
Katılım
4 Mayıs 2007
Mesajlar
3,623
Excel Vers. ve Dili
2016 PRO TÜRKÇE-İNG. 64 BİT
Merhaba,

Sizin için küçük bir örnek çalışma hazırladım.
Kendi çalışmanıza uyarlayabilirsiniz.
 

Ekli dosyalar

Erdem Akdemir

Destek Ekibi
Destek Ekibi
Katılım
4 Mayıs 2007
Mesajlar
3,623
Excel Vers. ve Dili
2016 PRO TÜRKÇE-İNG. 64 BİT
Kodun çalışması için module üzerinden çalıştırmanız gerekli.
Class module1'de ki makro'da oluşuyor. Userform ekranından çalıştırırsanız hata verir.
 

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
3,043
Excel Vers. ve Dili
Office 2013 İngilizce
Kodun çalışması için module üzerinden çalıştırmanız gerekli.
Class module1'de ki makro'da oluşuyor. Userform ekranından çalıştırırsanız hata verir.
Dosya açılırken userform zaten otomatik açılıyor,

Kod:
Sub auto_open()
ile çalıştırdım yine hata verdi.
 

Erdem Akdemir

Destek Ekibi
Destek Ekibi
Katılım
4 Mayıs 2007
Mesajlar
3,623
Excel Vers. ve Dili
2016 PRO TÜRKÇE-İNG. 64 BİT
Debug yaparak hatanın nerede oluştuğunu paylaşabilir misiniz.

Çalışmayı indiren diğer üyelerde hata varsa paylaşabilir misiniz.

Bende sorun görünmüyor.
 

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
Debug yaparak hatanın nerede oluştuğunu paylaşabilir misiniz.

Çalışmayı indiren diğer üyelerde hata varsa paylaşabilir misiniz.

Bende sorun görünmüyor.
Bende ilk indirdiğimde hiç açılmamıştı ancak şu anda açıldı ve sıkıntısız çalışıyor.
 

asdsxx

Altın Üye
Katılım
22 Mayıs 2012
Mesajlar
491
Excel Vers. ve Dili
Excel 2016 Türkçe
Altın Üyelik Bitiş Tarihi
20-02-2025
Arkadaşlar benim sizden bir ricam var ekteki dosyada combobox ile veri süzme yapılıyor ama combobox'a liste gelirken sütunda tüm veriler değilde tekrarlar teke indirilip listelenebilir mi?
Yani comboboxlerın hemen altındaki yani 2. satırdaki gibi Excel veri süz de olan şekilde olacak. Peki buna ne gerek var diyebilirsiniz ama bu comboboxları userform da kullanacağım. şu haliyle userformda tüm satırlarda bulunan bütün tekrarlar geliyor. aynı kelimeden 2 tanede olsa 50 tane de olsa combobox da 1 görünecek o kelimeyi seçince kelimenin geçtiği tüm satırları süzecek.
Biraz uzun anlattım ama derdimi tam anlatabilmek için yazdım. Kısaca ekteki dosyada 2. satırdaki Veri süz işlemininin aynısını comboboxlar la yapmak
 

Ekli dosyalar

asdsxx

Altın Üye
Katılım
22 Mayıs 2012
Mesajlar
491
Excel Vers. ve Dili
Excel 2016 Türkçe
Altın Üyelik Bitiş Tarihi
20-02-2025
şu online olan Erdem ve Yusuf Bey benim çalışmam ile ilgili yardımcı olabilirmisiniz acaba
 

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
3,043
Excel Vers. ve Dili
Office 2013 İngilizce
Debug yaparak hatanın nerede oluştuğunu paylaşabilir misiniz.

Çalışmayı indiren diğer üyelerde hata varsa paylaşabilir misiniz.

Bende sorun görünmüyor.
Ekran görüntüsü ektedir.

iyi çalışmalar.
 

Ekli dosyalar

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
"System.Collections" nesnesini VBA'de kullanabilmek için PC'de iyi, kötü bir .Net Framework kurulu olması gerekmektedir.

\%windir%\Microsoft.NET\FrameWork

.
 
Son düzenleme:

Erdem Akdemir

Destek Ekibi
Destek Ekibi
Katılım
4 Mayıs 2007
Mesajlar
3,623
Excel Vers. ve Dili
2016 PRO TÜRKÇE-İNG. 64 BİT
şu online olan Erdem ve Yusuf Bey benim çalışmam ile ilgili yardımcı olabilirmisiniz acaba
Aşağıdaki kodu kendi çalışmanıza uyarlayın.

Kod:
Private Sub ComboBox1_GotFocus()
Set s = CreateObject("Scripting.Dictionary")

son = Cells(Rows.Count, 1).End(3).Row
For i = 3 To son

If Not s.Exists(Cells(i, 1).Value) Then
s.Add Cells(i, 1).Value, Nothing
End If

Next i

ComboBox1.List = s.keys

End Sub
 

asdsxx

Altın Üye
Katılım
22 Mayıs 2012
Mesajlar
491
Excel Vers. ve Dili
Excel 2016 Türkçe
Altın Üyelik Bitiş Tarihi
20-02-2025
Aşağıdaki kodu kendi çalışmanıza uyarlayın.

Kod:
Private Sub ComboBox1_GotFocus()
Set s = CreateObject("Scripting.Dictionary")

son = Cells(Rows.Count, 1).End(3).Row
For i = 3 To son

If Not s.Exists(Cells(i, 1).Value) Then
s.Add Cells(i, 1).Value, Nothing
End If

Next i

ComboBox1.List = s.keys

End Sub
Erdem bey ilginize teşekkürler. yazdığınız kod benim eklediğim dosyadaki excel sayfasında gayet güzel çalıştı. Ama o kodları Userform üzerindeki combobox'a uygulamak istedim ama Combobox_GotFocuc() seçeneği yok. Userform da bu özelliğin görevini yapacak bir seçenek var mı

Excel sayfasındaki combobox kod seçenekleri penceresi
215127

Ama Userform daki combobox da bu seçenek yok

215125
 

Ekli dosyalar

Üst