Userformda Combobox Seçimine Göre Bir Sayfadaki Veriyi Diğer Sayfaya Kopyalama

1 2 3 4 5 6
16/09/2021, 22:44

Oğuz Türkyılmaz

(16/09/2021, 21:15)userx yazdı: Sayın Oğuz Türkyılmaz
Farklı bir örnek hazırladım. Belki bu şekilde işinize yarayabilir.

Sn @userx çok güzel olmuş elinize sağlık. Kodunuzdaki mantığı anlamaktan çok uzak olsam da kendimce 4.bir ürünü ekledim fakat sayfa eklendiği durumda ne yapmam gerektiğini kodun tamamını anlamadığım için çözemedim. Rica etsem kodu 4. bir sayfa eklediğim takdirde nasıl revize etmeliyim yazarsanız çok makbule geçecek ben yapamadım. Parametrede hücreye yazılan C11 aktarılacak değerin 1.değer 2.değer ve 3.değere nasıl ulaştığını hele hiç anlamadım.



Kod:
Private Sub CommandButton1_Click()
'Combobox sütunlarındaki değerler
a1 = ComboBox1.Column(1) 'Kaydedileceği 1.Sayfa
a2 = ComboBox1.Column(2) 'Aktarılacak 1.değer
a3 = ComboBox1.Column(3) 'Aktarıldığı 1.yer
'b1 = ComboBox1.Column(4) 'Kaydedileceği 2.Sayfa
'b2 = ComboBox1.Column(5) 'Aktarılacak 2.değer
'b3 = ComboBox1.Column(6) 'Aktarıldığı 2.yer
'c1 = ComboBox1.Column(7) 'Kaydedileceği 3.Sayfa
'c2 = ComboBox1.Column(8) 'Aktarılacak 3.değer
'c3 = ComboBox1.Column(9) 'Aktarıldığı 3,yer
'e1 = ComboBox1.Column(10) 'Kaydedileceği 4.Sayfa
'e2 = ComboBox1.Column(11) 'Aktarılacak 4.değer
'e3 = ComboBox1.Column(12) 'Aktarıldığı 4.yer
d1 = ComboBox1.Column(13) '1.DEĞER
'd2 = ComboBox1.Column(14) '2.DEĞER
'd3 = ComboBox1.Column(15) '3.DEĞER
'd4 = ComboBox1.Column(16) '4.DEĞER



'-------------------------------------------------
'Gönderilen sayfalar
ThisWorkbook.Sheets(a1).Range(a3) = d1 'Bioclimatic sayfası C11
'ThisWorkbook.Sheets(b1).Range(b3) = d2 'Pergole sayfası C11
'ThisWorkbook.Sheets(c1).Range(c3) = d3 'Motorlu Cam Tavan C11
'ThisWorkbook.Sheets(d1).Range(d3) = d4 'Rüzgar Kırıcı C11

End Sub
16/09/2021, 23:04

userx

(16/09/2021, 22:44)Oğuz Türkyılmaz yazdı:
(16/09/2021, 21:15)userx yazdı: Sayın Oğuz Türkyılmaz
Farklı bir örnek hazırladım. Belki bu şekilde işinize yarayabilir.

Sn @userx çok güzel olmuş elinize sağlık. Kodunuzdaki mantığı anlamaktan çok uzak olsam da kendimce 4.bir ürünü ekledim fakat sayfa eklendiği durumda ne yapmam gerektiğini kodun tamamını anlamadığım için çözemedim. Rica etsem kodu 4. bir sayfa eklediğim takdirde nasıl revize etmeliyim yazarsanız çok makbule geçecek ben yapamadım. Parametrede hücreye yazılan C11 aktarılacak değerin 1.değer 2.değer ve 3.değere nasıl ulaştığını hele hiç anlamadım.



Kod:
Private Sub CommandButton1_Click()
'Combobox sütunlarındaki değerler
a1 = ComboBox1.Column(1) 'Kaydedileceği 1.Sayfa
a2 = ComboBox1.Column(2) 'Aktarılacak 1.değer
a3 = ComboBox1.Column(3) 'Aktarıldığı 1.yer
'b1 = ComboBox1.Column(4) 'Kaydedileceği 2.Sayfa
'b2 = ComboBox1.Column(5) 'Aktarılacak 2.değer
'b3 = ComboBox1.Column(6) 'Aktarıldığı 2.yer
'c1 = ComboBox1.Column(7) 'Kaydedileceği 3.Sayfa
'c2 = ComboBox1.Column(8) 'Aktarılacak 3.değer
'c3 = ComboBox1.Column(9) 'Aktarıldığı 3,yer
'e1 = ComboBox1.Column(10) 'Kaydedileceği 4.Sayfa
'e2 = ComboBox1.Column(11) 'Aktarılacak 4.değer
'e3 = ComboBox1.Column(12) 'Aktarıldığı 4.yer
d1 = ComboBox1.Column(13) '1.DEĞER
'd2 = ComboBox1.Column(14) '2.DEĞER
'd3 = ComboBox1.Column(15) '3.DEĞER
'd4 = ComboBox1.Column(16) '4.DEĞER



'-------------------------------------------------
'Gönderilen sayfalar
ThisWorkbook.Sheets(a1).Range(a3) = d1 'Bioclimatic sayfası C11
'ThisWorkbook.Sheets(b1).Range(b3) = d2 'Pergole sayfası C11
'ThisWorkbook.Sheets(c1).Range(c3) = d3 'Motorlu Cam Tavan C11
'ThisWorkbook.Sheets(d1).Range(d3) = d4 'Rüzgar Kırıcı C11

End Sub

Mesaj#24 deki dosyada 4. sayfa da eklenerek güncellendi. Daha önceki örnekle karşılaştırarak inclersin.
17/09/2021, 00:25

Oğuz Türkyılmaz

Sn @userx çok teşekkür ederim. @berduş ve @feraz Gerçek örneğimi uyarladım ve bunun üzerinden tam yapmayı istediğimi ifade etmeye çalışayım.

Menüden Bioclimatic tıklandığında açılan formdan Motor türü Somfy seçildiğinde bioclimatik sayfası L23 hücresine Parametreler sayfası B5 Hücresindeki 3050 değerini yazdırmak.

Menüden Pergole tıklandığında açılan formdan Motor türü Somfy seçildiğinde ise Pergole sayfası D34 Hücresine parametreler sayfası C3 Hücresindeki 400 değerini ve D36 hücresine de B4 Hücresindeki 2750 değerini yazdırmak.

Bunlar gerçekleştiğinde zaten diğer 6 sayfadaki tüm kombinasyonları parametreler sayfası üzerinden rahatlıkla düzenleyebilirim.

17/09/2021, 01:07

userx

Bioclimatic formu için
Private Sub ComboBox_MotorCinsi_Change()
If ComboBox_MotorCinsi.Column(0) = "SOMFY" Then
[Bioclimatic!L23] = [Parametreler!B5].Value
End If
End Sub

Pergole formu için
Private Sub ComboBox_MotorCinsi_Change()
If ComboBox_MotorCinsi.Column(0) = "SOMFY" Then
[Pergole!D34] = [Parametreler!c3].Value
[Pergole!D36] = [Parametreler!B4].Value
End If
End Sub

yazarak dener misin?
17/09/2021, 16:02

Oğuz Türkyılmaz

İşte buuuuu. Deneme yapmaya gerek yok. 2 gündür anlatabilmek için göbeğimi çatlatan kodlar bunlar bir görüşte anlarım hocam. Allah ne muradınız varsa versin.
17/09/2021, 16:12

userx

Teşekkürler. Sayın Oğuz Türkyılmaz. Sizin de muradınızı versin.

Keşke son yüklediğiniz dosyanızı baştan yükleyip çözüm isteseydiniz. Çözüm daha çabuk bulunurdu.
Neyse bu arada konuyu inceleyen diğer üyelerimiz için farklı yöntemler de gösterilmiş oldu.
1 2 3 4 5 6