OTOMATİK SAYFA İSMİ ATAMA..

Katılım
3 Mart 2006
Mesajlar
70
MERHABA..yine bu siteden faydalandığım aşağıda yazmış olduğu kod,bir sayfaya veri aktarımı yapıyor..fakat benim birtürlü yapmak istediğim fakat yapamadığım :kafa: olay ise;buradaki sayfa 1 sayfasının benim seçtiğim (bir butona basarak ve ismini oradan alan) sayfa ismini nasıl tanımlarız..tşkürler

say = WorksheetFunction.CountA(Worksheets("Sayfa1").Range("A:A"))
TextBox1.Value = say
If TextBox2 = "" Then MsgBox "İş yeri kısmı boş olamaz", vbCritical, "Kontrol Edin": Exit Sub
If TextBox3 = "" Then MsgBox "Adet kısmı boş olamaz", vbCritical, "Kontrol Edin": Exit Sub
If TextBox4 = "" Then MsgBox "Benz kısmı boş olamaz", vbCritical, "Kontrol Edin": Exit Sub
If TextBox5 = "" Then MsgBox "En kısmı boş olamaz", vbCritical, "Kontrol Edin": Exit Sub
If TextBox6 = "" Then MsgBox "Boy kısmı boş olamaz", vbCritical, "Kontrol Edin": Exit Sub
If TextBox7 = "" Then MsgBox "Yük kısmı boş olamaz", vbCritical, "Kontrol Edin": Exit Sub

Range("A" & say + 1).Value = TextBox1.Value
Range("B" & say + 1).Value = TextBox2.Value
Range("C" & say + 1).Value = TextBox3.Value
Range("D" & say + 1).Value = TextBox4.Value
Range("E" & say + 1).Value = TextBox5.Value
Range("F" & say + 1).Value = TextBox6.Value
Range("G" & say + 1).Value = TextBox7.Value
Range("H" & say + 1).Value = Val(TextBox3) * Val(TextBox4) * Val(TextBox5) * Val(TextBox6) * Val(TextBox7)
Range("H" & say + 2).Value = WorksheetFunction.Sum(Worksheets("Sayfa1").Range("H2:H100"))
For i = 3 To WorksheetFunction.CountA(Worksheets("Sayfa1").Range("A:A"))
Range("A2") = 1
Range("A" & i).Value = Range("A" & i - 1).Value + 1
Next

say = WorksheetFunction.CountA(Worksheets("Sayfa1").Range("A:A"))
ListBox1.RowSource = "Sayfa1!" & "A1" & ":" & "G" & say
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Eğer verileri istediğiniz bir sayfaya aktarmak isterseniz hücre tanımlamalarının başında sayfa adını belirtmeniz gerekir. Örneğin;

[vb:1:5a8c3c5b02]sheets("sayfa2").Range("A" & say + 1).Value = TextBox1.Value[/vb:1:5a8c3c5b02]

eğer sayfa adı değişkense örneğin A1 hücresinden alınıyor ise bu durumda kodlama aşağıdaki gibi olabilir.

[vb:1:5a8c3c5b02]Set s1=sheets(range("A1"))
s1.Range("A" & say + 1).Value = TextBox1.Value[/vb:1:5a8c3c5b02]
 
Katılım
3 Mart 2006
Mesajlar
70
sn leventm bey..iyi akşamlar..öncelikli olarak verdiğiniz bilgiler çok işime yaradı..ama yine birşey soracağım..çünkü kafam çok karıştı :kafa:

ben combobox1 deki isme göre sayfayı otomatik açtırıyorum..ama daha sonraki başka kodlarda bu sayfayı tanımlaymıyorum..yardımcı olumusunuz?
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Bu durumda kodu aşağıdaki gibi düzenlemeniz yeterli görünüyor.

[vb:1:37c0f01194]Set s1=sheets(combobox1)
s1.Range("A" & say + 1).Value = TextBox1.Value [/vb:1:37c0f01194]
 
Katılım
3 Mart 2006
Mesajlar
70
SN leventm bey..gerçekten bilgiler için saloun..ben szşden kısaca bu yazılan kodun açıklamasını alabilirmiyim..teşekürler
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,057
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Set komutu ile s1 değişkenine ismi comboboxtan (sheets(combobox1))
alınan sayfa tanımlanır. (Set s1=sheets(combobox1))

İsmi comboboxtan seçilen sayfanın A sütunundaki sat değişkeniş ile belirlenen hücresine Textbox1 in değeri yazılır. (s1.Range("A" & say + 1).Value = TextBox1.Value)
 
Katılım
3 Mart 2006
Mesajlar
70
sn leventm verdiğiniz bilgiler için gerçekten çok tşkürler...
 
Üst