• DİKKAT

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

combobox'ta seçilen kapalı dosyaya veri

  • Konbuyu başlatan Konbuyu başlatan İhsan Tank
  • Başlangıç tarihi Başlangıç tarihi
İ

İhsan Tank

Misafir
selam arkadaşlar çalışma ( giriş ) buradan yaptığım işlemeleri userform'da bulunan combobox'ta seçtiğim kapalı dosyaya atmasını istiyorum
 

Ekli dosyalar

Veri dosyanızı benim yaptığım gibi hazırlamalısınız.
Toplamları almak isterseniz sonra yine sql ile alabilrsiniz.
Ama şunnuda belirtmek istiyorum ki.Exceli veri tabanı olarak kullanmak hiçte iyi bir seçim değil.En azaından access (mdb) dosyası kullanabilirsiniz.
Bakın nümeric değerleri ve tarihleri metin olarak atıyor sayfaya.
Dosyanız ektedir.:cool:
 

Ekli dosyalar

Veri dosyanızı benim yaptığım gibi hazırlamalısınız.
Toplamları almak isterseniz sonra yine sql ile alabilrsiniz.
Ama şunnuda belirtmek istiyorum ki.Exceli veri tabanı olarak kullanmak hiçte iyi bir seçim değil.En azaından access (mdb) dosyası kullanabilirsiniz.
Bakın nümeric değerleri ve tarihleri metin olarak atıyor sayfaya.
Dosyanız ektedir.:cool:

hocam anladığım kadarı ile bana access kullanmamı tavsiye ediyorsunuz yalnız ben access kullanmayı hiç bilmiyorum.
ikincisi ise bunların tarih ve numerik olarak değiştiremiyoruz değil mi_?
üçünccüsü ise ben bunu cari hesapta kullanacağım ve sayfaya birtanede bakiye satırı açılacak yalnız bunu açtığım zaman en son hangi satıra kadar uzatırsam o kadar aşaıda yazıyır verileri

sanırım biraz uzun oldu hocam ( diğer konu ise ben daha excel'i kullanmayı bilmiyorum diğer konu fazla olmaz mı_? )
 
hocam anladığım kadarı ile bana access kullanmamı tavsiye ediyorsunuz yalnız ben access kullanmayı hiç bilmiyorum.
ikincisi ise bunların tarih ve numerik olarak değiştiremiyoruz değil mi_?
üçünccüsü ise ben bunu cari hesapta kullanacağım ve sayfaya birtanede bakiye satırı açılacak yalnız bunu açtığım zaman en son hangi satıra kadar uzatırsam o kadar aşaıda yazıyır verileri

sanırım biraz uzun oldu hocam ( diğer konu ise ben daha excel'i kullanmayı bilmiyorum diğer konu fazla olmaz mı_? )
Access kullnamanızı tavsiye etmiyorum.Veri tabanı olarak access dosysı yani mdb dosyası kullanmanız daha doğrudur diyorum.
Accesi hiç açamadan excelde kod yazarak mdb veri tabanına kayıt girmenizi söylüyorum.
Excelde ADO-sql ile maalsef bunu yapamıyoruz.Ama acese mdb dosyası kullanmış olsaydınız.İstediğiniz alana istediiniz tanımlamayı yapabilirsdiniz.Sonra otomatik sayı kullanbilirdiniz.Sonra ilişkilendirme veya join kullanabilirdiniz.
Orada sütunlar arasında en son staırı son kayıtlı satır olarak görüyor.
Yeni kayıtı o satırın altına ekliyor.Zaren bende bu yüzden son bakiye sitununu kaldırmıştım.
Bunu userformda listviewde veya listboxta veya sayfada sonradan kodları alınca döngüye girip oluşturabilirsiniz.Zaten prof programlarda böyle yapılıyor.
Gördüğünüz gibi ben dosyayı yaptım.Bana düşeni yaptım.Bu kadar oluyor.Size nasıl olması gerektiğinide söyledim.
Bundan sonrası size kalmış.
Ya ADO kullanmadan isterseniz exceli deosyayı kod ile açarak verileri girebilir sonrada kapatabilirsiniz.İsterseniz bu seçeneği kullanın.O zaman biçimlendirmede vede bakiye sütununda sorun olmaz.:cool:
 
Accesi hiç açamadan excelde kod yazarak mdb veri tabanına kayıt girmenizi söylüyorum.
Bunu userformda listviewde veya listboxta veya sayfada sonradan kodları alınca döngüye girip oluşturabilirsiniz.Zaten prof programlarda böyle yapılıyor.

Gördüğünüz gibi ben dosyayı yaptım.Bana düşeni yaptım.Bu kadar oluyor.Size nasıl olması gerektiğinide söyledim.
Bundan sonrası size kalmış.

Ya ADO kullanmadan isterseniz exceli deosyayı kod ile açarak verileri girebilir sonrada kapatabilirsiniz.İsterseniz bu seçeneği kullanın.O zaman biçimlendirmede vede bakiye sütununda sorun olmaz.:cool:

hocam öncelikle tekrardan ilginiz için teşekkür ederim yanlış anlamışım.
buraya yazdıklarınızı nasıl yapabilirim onları izah edebilir misiniz ve ben excel çok fazlasıyla yabancısı olduğumuz hissediyorum o yüzden bunları nasıl yapabileceğimi'de izah ederseniz ben çok sevinirim. ayrıca ADO ne demektir. nasıl kullanılır.
Bunu da söylemeliyim Bütün Uzman Arkadşalardan ALLAH RAZI OLSUN
yardımlarınızı bekliyorum
 
hocam öncelikle tekrardan ilginiz için teşekkür ederim yanlış anlamışım.
buraya yazdıklarınızı nasıl yapabilirim onları izah edebilir misiniz ve ben excel çok fazlasıyla yabancısı olduğumuz hissediyorum o yüzden bunları nasıl yapabileceğimi'de izah ederseniz ben çok sevinirim. ayrıca ADO ne demektir. nasıl kullanılır.
Bunu da söylemeliyim Bütün Uzman Arkadşalardan ALLAH RAZI OLSUN
yardımlarınızı bekliyorum
Google dan veri tabanı için database ve ado için arama yapınız.Bunlar 2-3 satırda anlatılacak konular değiller.:cool:
 
evren hocam teşekkür ederim yardımlarınız için
sorunumu çözdüm biraz farklı oldu ama sizin yardımlarınız sayesinde dosyamı ekliyorum
 

Ekli dosyalar

Son düzenleme:
evren hocam 7 nolu mesajdaki eki inceleyip bilgi verebilir misiniz
 
evren hocam 7 nolu mesajdaki eki inceleyip bilgi verebilir misiniz
Şu şekilde değiştirin.
Kod:
Kayit("TARİH") = CDate(TextBox1.Text)
Kayit("AÇIKLAMA") = TextBox2.Text
Kayit("ALINAN") = Format(CDbl(TextBox3), "#,##0.00")
Kayit("VERİLEN") = Format(CDbl(TextBox4), "#,##0.00")
Ama yine benim dediklerim aynen olmuş.
EVREN_VERI sayfasında sayılar ve tarihler yine metin biçiminde oluyor.
Sanırım siz benim dediklerimi kulak arkası ediyorsunuz.:cool:
Veri tabanı için excel dosyası elverişli değildir.2,2 daha 4 eder gibi.
Ayrıca excel sayfasından ado ile kayıtta silemzsiniz.Bunuda belirteyim.:cool:
 
hocam ben sizin söylediklerinizi kulak arkası etmedim sadece şu an için not aldım sebebiyse şu an buna ihtiyacım var ama ınu mutlaka araştıracağım. hocam data EVREN_VERİ sayfasında 1 adlı sayfa var yani datayı veri sayfası olarak düşündüm. diğer konu ise kayıt silme gerekmiyecek çünkü cari tutacağım ve yaklaşık olarak excel'de 30 sayfa var ve hepsi 2004 yılından başlıyor
yinede gerekli bilgileri vardiğiniz için teşekür ederim ama mutkala bu dediklerinizi araştıracağım ve umarım bende sizin gibi burada yardım isteyen arkadaşlara yardım ederim ama benim daha çok yolum var. ALLAH SİZLERDEN RAZI OLSUN ( hocam büyük yazmayın diyorsunuz ama ben dayanamayıp bu kelimeyi yazdım )
 
Ben yine konuyu anlatamadım.
Veriler metin olarak kaydediliyor.
Bunu alıp kendi içinde kullanacaksınız muhtemelen.Ve formül kullancaksınız.İşte o zaman göreceksiniz.Toplama yapamayacaksınız.
İllaki ona başka bir dosyadan veri girecekseniz o zaman ado kullanmayın..Kod ile dosyayı açıp verileri girin sonra yine kod ile kapatın.
Veri almak içinse ado yu rahatlıkla kullabilrsiniz.Veri almada problem yok.:cool:
 
Kod ile dosyayı açıp verileri girin sonra yine kod ile kapatın.
.:cool:

hocam burada ne demek istediğinizi tam anlamışmıyım ben girişden veri girişi yaparken kod altta istediğim sayfayı açacak işlem bittikten sonra kapatacak doğru mu hocam _?
ayrıca anladığım doğru ise nasıl yapabilirim teşekkür ederim
 
hocam burada ne demek istediğinizi tam anlamışmıyım ben girişden veri girişi yaparken kod altta istediğim sayfayı açacak işlem bittikten sonra kapatacak doğru mu hocam _?
ayrıca anladığım doğru ise nasıl yapabilirim teşekkür ederim
Evet doğrudur.
Workbooks.open(yol&dosya) ile açıp verileri girecekseniz.
workbooks("deneme.xls").close true ile kapatacaksınız.
 
hocam ben başaramadım sanırım hata veriyor bir örnek yapabilirmisiniz
 
hocam ben başaramadım sanırım hata veriyor bir örnek yapabilirmisiniz
Dosyanız ektedir.:cool:
Kod:
Private Sub CommandButton1_Click()
Dim wb As Workbook, sh As Worksheet, sat As Long
If TextBox1.Text & TextBox2.Text & TextBox3.Text = "" Then
MsgBox "hiç veri girmediniz"
Exit Sub
End If
a = MsgBox(TextBox1.Text & "  Bu kayıtı yapmak istiyormusunuz. ", vbYesNo + vbInformation, c & " Rapor aktarımı")
If a = vbNo Then
Exit Sub
End If
Application.DisplayAlerts = False
If Workbooks.Open(ThisWorkbook.Path & "\" & ComboBox1.Value).ReadOnly = True _
Then Workbooks(ComboBox1.Value).Close False
Application.DisplayAlerts = True
Set wb = Workbooks(ComboBox1.Value)
Set sh = wb.Sheets("data")
sat = sh.Cells(65536, "A").End(xlUp).Row + 1
If sat >= 65533 Then
    MsgBox wb.Name & " İsimli dosyada sayfa dolduğu için kayıt yapılmadı."
    wb.Close False
    Exit Sub
End If
sh.Cells(sat, "A").Value = CDate(TextBox1.Text)
sh.Cells(sat, "A").NumberFormat = "dd.mm.yyyy"
sh.Cells(sat, "B").Value = TextBox2.Text
sh.Cells(sat, "C").Value = CDbl(TextBox3.Text)
sh.Cells(sat, "C").NumberFormat = "#,##0.00"
sh.Cells(sat, "D").Value = CDbl(TextBox4.Text)
sh.Cells(sat, "D").NumberFormat = "#,##0.00"
wb.Close True
MsgBox "[ " & ComboBox1.Value & " ] isimli dosyaya kayıt başarı ile girildi." & vbLf & _
"evrengizlen@hotmail.com", vbOKOnly + vbInformation, "E V R E N"
Set sh = Nothing
Set wb = Nothing
Unload Me
End Sub
 

Ekli dosyalar

hocam buna ekleme yapıp işlem yapabiliyorum herşey için teşekkür ederim çok başınızı ağrıttım kusura bakma teşekkür ederim
 
Geri
Üst