Optionbutton ile iki sayfaya veri aktarımı

Katılım
13 Ağustos 2009
Mesajlar
9
Excel Vers. ve Dili
office2003
türkçe
Merhaba,
Aşağıdaki kod ile optionbutton u seçerek sayfa 1 e veri kaydedebiliyorum.benim istediğim aynı anda aynı verinin sayfa 2 ye de kaydolması. Nasıl bir yol izleyebilirim?



If OptionButton1.Value = True Then Sheets("Sayfa1").Range("E" & X).Value = UCase("TRANSFER")
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Merhaba

Deneyiniz.
Kod:
If OptionButton1.Value = True Then
    Sheets("Sayfa1").Range("E" & X).Value = UCase("TRANSFER")
    Sheets("Sayfa2").Range("E" & X).Value = UCase("TRANSFER")
End If
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
Örnek dosya ekler misiniz.

 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,745
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Sayfa2 korumalı olabilir mi?
 

Ömer

Moderatör
Yönetici
Katılım
18 Ağustos 2007
Mesajlar
22,184
Excel Vers. ve Dili
Microsoft 365 Tr
Ofis 2016 Tr
İlave kayıtlar "STOKKAYIT" sayfasına olacak sanırım.

İlk olarak bu sayfanın 115:124 satırları arasında veri kalmış bunları silin, çünkü son boş satırı bulurken bu yüzden sorun yaşarsınız.

CommandButton2_Click kodlarını aşağıdakilerle değiştirin. Yapılacaksa, değişiklikleri diğer kodlara da yaparsanız.

Ayrıca boş satırı bulmak için;
'For X = 2 To 1000000
'If Sheets("STOKKAYITG").Range("A" & X).Value = "" Then Exit For
'Next

Kodları yerine

X = Sheets("STOKKAYITG").Cells(Rows.Count, "A").End(xlUp).Row + 1

kullanmanız daha doğru olur, döngüye gerek kalmadan iş daha hızlı ilerler. Ben aşağıdaki kodları bu şekilde revize ettim.

Kod:
Private Sub CommandButton2_Click()

If Empty = cbb_ara Then
MsgBox "LÜTFEN BİR ÜRÜN SEÇİNİZ.", vbCritical
Exit Sub
End If

Dim X As Long
 
'For X = 2 To 1000000
'If Sheets("STOKKAYITG").Range("A" & X).Value = "" Then Exit For
'Next

X = Sheets("STOKKAYITG").Cells(Rows.Count, "A").End(xlUp).Row + 1
Y = Sheets("STOKKAYIT").Cells(Rows.Count, "A").End(xlUp).Row + 1

Sheets("STOKKAYITG").Range("A" & X).Value = UCase(txb_tarih.Value)
Sheets("STOKKAYITG").Range("B" & X).Value = UCase(cbb_ara.Value)
Sheets("STOKKAYITG").Range("D" & X).Value = UCase(TextBox1.Value)

Sheets("STOKKAYIT").Range("A" & Y).Value = UCase(txb_tarih.Value)
Sheets("STOKKAYIT").Range("B" & Y).Value = UCase(cbb_ara.Value)
Sheets("STOKKAYIT").Range("D" & Y).Value = UCase(TextBox1.Value)

If OptionButton7.Value = True Then
    Sheets("STOKKAYITG").Range("E" & X).Value = UCase("ALIŞ")
    Sheets("STOKKAYIT").Range("E" & Y).Value = UCase("ALIŞ")
End If

If OptionButton8.Value = True Then
    Sheets("STOKKAYITG").Range("E" & X).Value = UCase("İADE")
    Sheets("STOKKAYIT").Range("E" & Y).Value = UCase("İADE")
End If

If OptionButton9.Value = True Then
    Sheets("STOKKAYITG").Range("E" & X).Value = UCase("TRANSFER")
    Sheets("STOKKAYIT").Range("E" & Y).Value = UCase("TRANSFER")
End If


txb_cikis.Value = ""
cbb_ara.Value = ""
TextBox1.Value = ""

End Sub
 
Katılım
13 Ağustos 2009
Mesajlar
9
Excel Vers. ve Dili
office2003
türkçe
Ellerinize sağlık teşekkür ederim.
 
Üst