• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

yıllık ürün takibi

Katılım
26 Haziran 2011
Mesajlar
23
Excel Vers. ve Dili
excel 2010 türkçe
arkadaşlar ben sattığım ürünlerin yıllık takibi için bir tablo düzenledim.
bu tabloya veri girişlerini kolaylaştırmak amacıyla bir makro oluşturmayı düşündüm ama bu konuda yeterli bilgiye sahip değilim.
hazırlamış olduğum tabloya deneme adlı bir makro ekledim. ama sadece forma gerekli objeleri ekledim ve görüntüsünü ayarladım.
kod hazırlama kısmındada bu işten anlayan uzman arkadaşların desteğini bekliyorum.
 

Ekli dosyalar

Son düzenleme:
bu tablo sadece bir tane şahsa ait bir çalışma kitabı ve bu şekilde 9-10 tane daha çalışma kitabı var.
aynı makroyu bütün çalışma kitapları için kullanabilirmiyim? böyle birşey mümkün mü?
 
arkadaşlar ben sattığım ürünlerin yıllık takibi için bir tablo düzenledim.
bu tabloya veri girişlerini kolaylaştırmak amacıyla bir makro oluşturmayı düşündüm ama bu konuda yeterli bilgiye sahip değilim.
hazırlamış olduğum tabloya deneme adlı bir makro ekledim. ama sadece forma gerekli objeleri ekledim ve görüntüsünü ayarladım.
kod hazırlama kısmındada bu işten anlayan uzman arkadaşların desteğini bekliyorum.

merhaba
10 dkk 2 mesaj mükemmel ya az sabretseniz olmaz mı_?
userform'un kod bölümüne
Kod:
Option Explicit
Private Sub CommandButton1_Click()
Dim s1
If TextBox1 = Empty Then
MsgBox "Ürün1'i Boş Geçtiniz Giriş Yok ise Lütfen 0 Giriniz", vbCritical
TextBox1.SetFocus
ElseIf TextBox2 = Empty Then
MsgBox "Ürün2'i Boş Geçtiniz Giriş Yok ise Lütfen 0 Giriniz", vbCritical
TextBox2.SetFocus
ElseIf TextBox3 = Empty Then
MsgBox "Ürün3'i Boş Geçtiniz Giriş Yok ise Lütfen 0 Giriniz", vbCritical
TextBox3.SetFocus
ElseIf TextBox4 = Empty Then
MsgBox "Ürün4'i Boş Geçtiniz Giriş Yok ise Lütfen 0 Giriniz", vbCritical
TextBox4.SetFocus
ElseIf TextBox5 = Empty Then
MsgBox "Ürün5'i Boş Geçtiniz Giriş Yok ise Lütfen 0 Giriniz", vbCritical
TextBox5.SetFocus
End If
s1 = ListBox1.Text
Sheets(s1).[B33].End(3).Offset(1, 0) = TextBox1.Text
Sheets(s1).[C33].End(3).Offset(1, 0) = TextBox2.Text
Sheets(s1).[D33].End(3).Offset(1, 0) = TextBox3.Text
Sheets(s1).[E33].End(3).Offset(1, 0) = TextBox4.Text
Sheets(s1).[F33].End(3).Offset(1, 0) = TextBox5.Text
End Sub
Private Sub UserForm_Initialize()
ListBox1.AddItem "OCAK"
ListBox1.AddItem "ŞUBAT"
ListBox1.AddItem "MART"
ListBox1.AddItem "NİSAN"
ListBox1.AddItem "MAYIS"
ListBox1.AddItem "HAZİRAN"
ListBox1.AddItem "TEMMUZ"
ListBox1.AddItem "AĞUSTOS"
ListBox1.AddItem "EYLÜL"
ListBox1.AddItem "EKİM"
ListBox1.AddItem "KASIM"
ListBox1.AddItem "ARALIK"
End Sub
bu kodları yapıştırın. listboz'ta seçtiğiniz sayfaya aktarım yapar.
Not : Sayfalarda Minimum 33 satır olmalıdır.
Lütfen konu açarken konu başlığını acil yardım veya bu tarzda belirlemeyin. bir daha ki sefer yardım almamanız için konuyu taşıyacağım
 
teşekkür ederim hemen deniyorum. verdiğim rahatsızlıktan dolayıda özür dilerim.
 
Sheets(S1).[B33].End(3).Offset(1, 0) = TextBox1.Text
bu satırda hata veriyor.
 
tamam kusura bakmayın sebebini buldum alttaki list boxtan veri girilecek olan ayı seçmediğim için hata veriyormuş.
belirlediğim herhangi bir tarihin verilerini girmek için yeni bir textbox eklemeyi düşünüyorum.
örnek olarak listboxtan şubat ayını seçip textboxa 05.02.2010 yazdığımda girdiğim veriler şubat adlı sayfanın o tarihli sütununa kaydedilsin.
bunun için ne yapmam gerekiyor.

ve göster butonuda aynı şekilde tarih textboxına yazdığım tarihteki verileri listbox2 de göstersin.

birde denerken farkettim verileri girdiğimde mesela mart ayını lixtboxtan seçtiğimde ekrana mart ayı gelmiyor yani makroyu kapattıktan sonra ancak görebiliyorum bunuda ayarlayabilirmisiniz.

son olarak Allah sizden razı olsun gerçekten çok kısa sürede ve kesin çözüm. çok teşekkür ediyorum.
 
bir böyle bir şey yapacaksanız yani arada tarih atlayacaksanız bunun yerini bulmasını sağlamıyalım bunun yerine alt alta kayıt yapsın olmaz mı_?
diğer söylediğiniz gayet basit bir şey hemen yapılacak bir şey.

önce konu tam çözüme kavuşsun ondan sonra teşekkür edersiniz
 
tarih atlama yapılabilecek şekilde olsaydı çok iyi olurdu. çünkü bu tabloları düzenli olarak arşivleyecem.
normalde hergün bu kayıtlar girilecek ama bazen bütün ürünlerin üstüste 0 olacağı zamanlar oluyor.
bu nedenle belirttiğim tarihe değer girebilseydim çok iyi olurdu.
 
dediğim gibi bu şekilde döngüye girmeli bu şekilde kullanabilirsiniz. boş olanları alt alta 0 olarak kayıt yaparsın. ancak bu şekilde olabilir yada dediğim gibi alt alta kayıt yaparsınız tarihlerde oynama olmaz bu şekilde siz zaten herhangi bir textbox'u boş bırakamıyorsunuz
 
tamam o zaman o şekilde deneyecem yani boş verileri 0 olarak girecem.
diğer butonları ve bahsettiğim diğer fonksiyonlar için ne eklemeleiyim kodlara.
 
tamam o zaman o şekilde deneyecem yani boş verileri 0 olarak girecem.
diğer butonları ve bahsettiğim diğer fonksiyonlar için ne eklemeleiyim kodlara.

merhaba
Kod:
Option Explicit
Private Sub CommandButton1_Click()
Dim s1
If ListBox1.Value = Empty Then
MsgBox "Lütfen Sayfa Seçiniz", vbCritical
ListBox1.SetFocus
ElseIf TextBox1 = Empty Then
MsgBox "Ürün1'i Boş Geçtiniz Giriş Yok ise Lütfen 0 Giriniz", vbCritical
TextBox1.SetFocus
ElseIf TextBox2 = Empty Then
MsgBox "Ürün2'i Boş Geçtiniz Giriş Yok ise Lütfen 0 Giriniz", vbCritical
TextBox2.SetFocus
ElseIf TextBox3 = Empty Then
MsgBox "Ürün3'i Boş Geçtiniz Giriş Yok ise Lütfen 0 Giriniz", vbCritical
TextBox3.SetFocus
ElseIf TextBox4 = Empty Then
MsgBox "Ürün4'i Boş Geçtiniz Giriş Yok ise Lütfen 0 Giriniz", vbCritical
TextBox4.SetFocus
ElseIf TextBox5 = Empty Then
MsgBox "Ürün5'i Boş Geçtiniz Giriş Yok ise Lütfen 0 Giriniz", vbCritical
TextBox5.SetFocus
Else
s1 = ListBox1.Text
Sheets(s1).[B33].End(3).Offset(1, 0) = TextBox1.Text
Sheets(s1).[C33].End(3).Offset(1, 0) = TextBox2.Text
Sheets(s1).[D33].End(3).Offset(1, 0) = TextBox3.Text
Sheets(s1).[E33].End(3).Offset(1, 0) = TextBox4.Text
Sheets(s1).[F33].End(3).Offset(1, 0) = TextBox5.Text
Sheets(s1).Select
End If
End Sub
Private Sub UserForm_Initialize()
ListBox1.AddItem "OCAK"
ListBox1.AddItem "ŞUBAT"
ListBox1.AddItem "MART"
ListBox1.AddItem "NİSAN"
ListBox1.AddItem "MAYIS"
ListBox1.AddItem "HAZİRAN"
ListBox1.AddItem "TEMMUZ"
ListBox1.AddItem "AĞUSTOS"
ListBox1.AddItem "EYLÜL"
ListBox1.AddItem "EKİM"
ListBox1.AddItem "KASIM"
ListBox1.AddItem "ARALIK"
End Sub
buyrun buda yeni kod
 
bu "çık" ve "düzenle" butonlarının kodları yok içinde sanırım.
ben forma yeni bir listbox eklesem ve orda en son eklediğim verilerin olduğu satırı görsem ve listbox2 deki satırı seçtiğimde onu düzeltme butonu ile düzeltseydim iyi olurdu.
çık butonuda sadece yapılan bütün değişiklikleri kaydedip çıkmak için kullanmayı düşünüyorum.

son olarak verileri girip kaydet butonuna bastıktan sonra textboxlardaki değerler silinseydi çok iyi olurdu.
 
bu "çık" ve "düzenle" butonlarının kodları yok içinde sanırım.
ben forma yeni bir listbox eklesem ve orda en son eklediğim verilerin olduğu satırı görsem ve listbox2 deki satırı seçtiğimde onu düzeltme butonu ile düzeltseydim iyi olurdu.
çık butonuda sadece yapılan bütün değişiklikleri kaydedip çıkmak için kullanmayı düşünüyorum.

son olarak verileri girip kaydet butonuna bastıktan sonra textboxlardaki değerler silinseydi çok iyi olurdu.

merhaba çık butonu ve girişten sonra textboxların temizlenmelerini hallettim.
diğerleri bu userform'a uygun değil gerekli açacaklarınızı açın ondan sonra dosyanızı güncelleyin.
Kod:
Option Explicit
Private Sub CommandButton1_Click()
Dim s1
If ListBox1.Value = Empty Then
MsgBox "Lütfen Sayfa Seçiniz", vbCritical
ListBox1.SetFocus
ElseIf TextBox1 = Empty Then
MsgBox "Ürün1'i Boş Geçtiniz Giriş Yok ise Lütfen 0 Giriniz", vbCritical
TextBox1.SetFocus
ElseIf TextBox2 = Empty Then
MsgBox "Ürün2'i Boş Geçtiniz Giriş Yok ise Lütfen 0 Giriniz", vbCritical
TextBox2.SetFocus
ElseIf TextBox3 = Empty Then
MsgBox "Ürün3'i Boş Geçtiniz Giriş Yok ise Lütfen 0 Giriniz", vbCritical
TextBox3.SetFocus
ElseIf TextBox4 = Empty Then
MsgBox "Ürün4'i Boş Geçtiniz Giriş Yok ise Lütfen 0 Giriniz", vbCritical
TextBox4.SetFocus
ElseIf TextBox5 = Empty Then
MsgBox "Ürün5'i Boş Geçtiniz Giriş Yok ise Lütfen 0 Giriniz", vbCritical
TextBox5.SetFocus
Else
s1 = ListBox1.Text
Sheets(s1).[B33].End(3).Offset(1, 0) = TextBox1.Text
Sheets(s1).[C33].End(3).Offset(1, 0) = TextBox2.Text
Sheets(s1).[D33].End(3).Offset(1, 0) = TextBox3.Text
Sheets(s1).[E33].End(3).Offset(1, 0) = TextBox4.Text
Sheets(s1).[F33].End(3).Offset(1, 0) = TextBox5.Text
Sheets(s1).Select
End If
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
TextBox4.Text = ""
TextBox5.Text = ""
End Sub
Private Sub CommandButton4_Click()
Unload Me
End Sub
Private Sub UserForm_Initialize()
ListBox1.AddItem "OCAK"
ListBox1.AddItem "ŞUBAT"
ListBox1.AddItem "MART"
ListBox1.AddItem "NİSAN"
ListBox1.AddItem "MAYIS"
ListBox1.AddItem "HAZİRAN"
ListBox1.AddItem "TEMMUZ"
ListBox1.AddItem "AĞUSTOS"
ListBox1.AddItem "EYLÜL"
ListBox1.AddItem "EKİM"
ListBox1.AddItem "KASIM"
ListBox1.AddItem "ARALIK"
End Sub
 

merhaba
sil butonu verilerinizin düzenini bozacaktır.
Kod:
Option Explicit
Private Sub CommandButton1_Click()
Dim s1
If ListBox1.ListIndex = -1 Then
MsgBox "Lütfen Sayfa Seçiniz", vbCritical
ListBox1.SetFocus
ElseIf TextBox1 = Empty Then
MsgBox "Ürün1'i Boş Geçtiniz Giriş Yok ise Lütfen 0 Giriniz", vbCritical
TextBox1.SetFocus
ElseIf TextBox2 = Empty Then
MsgBox "Ürün2'i Boş Geçtiniz Giriş Yok ise Lütfen 0 Giriniz", vbCritical
TextBox2.SetFocus
ElseIf TextBox3 = Empty Then
MsgBox "Ürün3'i Boş Geçtiniz Giriş Yok ise Lütfen 0 Giriniz", vbCritical
TextBox3.SetFocus
ElseIf TextBox4 = Empty Then
MsgBox "Ürün4'i Boş Geçtiniz Giriş Yok ise Lütfen 0 Giriniz", vbCritical
TextBox4.SetFocus
ElseIf TextBox5 = Empty Then
MsgBox "Ürün5'i Boş Geçtiniz Giriş Yok ise Lütfen 0 Giriniz", vbCritical
TextBox5.SetFocus
Else
s1 = ListBox1.Text
Sheets(s1).[B33].End(3).Offset(1, 0) = TextBox1.Text
Sheets(s1).[C33].End(3).Offset(1, 0) = TextBox2.Text
Sheets(s1).[D33].End(3).Offset(1, 0) = TextBox3.Text
Sheets(s1).[E33].End(3).Offset(1, 0) = TextBox4.Text
Sheets(s1).[F33].End(3).Offset(1, 0) = TextBox5.Text
Sheets(s1).Select
End If
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
TextBox4.Text = ""
TextBox5.Text = ""
End Sub

Private Sub CommandButton2_Click()
Dim sat, cevap
sat = ListBox1.ListIndex + 2
cevap = MsgBox("DEĞİŞTİRMEK İSTEDİĞİNİZDEN EMİNMİSİNİZ!", vbYesNo, "")
If cevap = vbNo Then Exit Sub
Sheets(ListBox1.Text).Select
ListBox1.RowSource = ""
Cells(sat, "B") = TextBox1.Value
Cells(sat, "C") = TextBox2.Value
Cells(sat, "D") = TextBox3.Value
Cells(sat, "E") = TextBox4.Value
Cells(sat, "F") = TextBox5.Value
liste
End Sub

[COLOR="Red"]Private Sub CommandButton3_Click()
Dim cevap, Silinecek_Satir
If ListBox1.ListIndex >= 0 Then
cevap = MsgBox("Bilgi Silinecek ... Emin misiniz ?", vbYesNo, "SİLME ONAYI")
If cevap = vbYes Then
Silinecek_Satir = ListBox1.ListIndex + 2
Sheets(ListBox1.Text).Rows(Silinecek_Satir).Delete
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
TextBox4.Text = ""
TextBox5.Text = ""
End If
End If
liste
End Sub[/COLOR]
Private Sub CommandButton4_Click()
Unload Me
End Sub
Private Sub ListBox1_Click()
liste
End Sub
Private Sub ListBox2_Click()
Dim s1, Bulunan_Satir_No
s1 = ListBox1.Text
Sheets(s1).Select
Bulunan_Satir_No = ListBox1.ListIndex + 2
TextBox1.Text = Sheets(s1).Range("B" & Bulunan_Satir_No).Value
TextBox2.Text = Sheets(s1).Range("C" & Bulunan_Satir_No).Value
TextBox3.Text = Sheets(s1).Range("D" & Bulunan_Satir_No).Value
TextBox4.Text = Sheets(s1).Range("E" & Bulunan_Satir_No).Value
TextBox5.Text = Sheets(s1).Range("F" & Bulunan_Satir_No).Value
End Sub
Private Sub UserForm_Initialize()
ListBox1.AddItem "OCAK"
ListBox1.AddItem "ŞUBAT"
ListBox1.AddItem "MART"
ListBox1.AddItem "NİSAN"
ListBox1.AddItem "MAYIS"
ListBox1.AddItem "HAZİRAN"
ListBox1.AddItem "TEMMUZ"
ListBox1.AddItem "AĞUSTOS"
ListBox1.AddItem "EYLÜL"
ListBox1.AddItem "EKİM"
ListBox1.AddItem "KASIM"
ListBox1.AddItem "ARALIK"
End Sub
Private Sub liste()
ListBox2.Clear
Dim I
For I = 2 To 33
If Sheets(ListBox1.Text).Cells(I, 2) = "" Then GoTo 10:
ListBox2.AddItem (Sheets(ListBox1.Text).Cells(I, 1) & "                    " & Cells(I, 2) & "                     " & _
Cells(I, 3) & "                     " & Cells(I, 4) & "                      " & Cells(I, 5))
10: Next
End Sub
bu kodu kullanın eğer ki sil butonunu iptal etmek isterseniz
kırmızı yeri siliniz
 
Sayın İhsan Tank,

Günaydın.. İyi haftalar ve bol kazançlar..

Konu başlığı ve yanıtınız ilgimi çekti.. Dosyayı açtığımda userform'u göremiyorum. Nedeni ne olabilir?

Eksik ya da yanlış bir şey yazmışsam, bilgisizliğime verin..

Sevgiler..
 
Sayın İhsan Tank,

Günaydın.. İyi haftalar ve bol kazançlar..

Konu başlığı ve yanıtınız ilgimi çekti.. Dosyayı açtığımda userform'u göremiyorum. Nedeni ne olabilir?

Eksik ya da yanlış bir şey yazmışsam, bilgisizliğime verin..

Sevgiler..

merhaba
alt+F11 tuş kombinasyonu ile kod bölümüne geçin. sağ taraftaki bölümde userform1 yazan yer var çift tıklayın
 
Merhaba,

Öncelikle inceliğiniz ve kısa süredeki yanıtınız için teşekkürler.

Sizi eksik bilgilendirdiğimi farkettim... Şöyleki:

Dosyayı açtığımda ay isimleri yazılı sayfalara veri girerken ya da ilk açılışta "UserForm" karşıma çıkmıyor.

Nedeni ne olabilir? Ya da ne yapmam gerekiyor?

Sevgiler..
 
Geri
Üst