• DİKKAT

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

Excel Vba Program Yapma

ERRİC

Altın Üye
Katılım
19 Ekim 2010
Mesajlar
313
Excel Vers. ve Dili
OFFİCE 2009
Merhabalar
Ekte yapıp ancak bir noktaya kadar gelebildiğim excel de siz üstadlar için basit muhasebe programını 3 gündür bitiremedim. Aşağıda vereceğim verilerle yardımlarınızı rica ediyorum;
Ekli excel dosyasında da göreceğiniz üzere

*xls uzantısı olmayıp bu çalışmayı .exe haline getirilebilir mi bu çalışmadan;
*ilk açılış sayfasında yapmaya çalıştığım kapağın gelmesini sağlayabilir miyiz;
*ikinci sayfanın tamamında formun gözükmesini ve bu form üzreinden yapılan kayıtların başka bir sayfaya atılmasını sağlayabilir miyiz;
*form da 12 sutun (başlık) bulunmakta sırasıyla,
Kod
Hesap Kodu
Evrak Tarihi
Evrak No
Gelir Açıklama
Kdv
Satılan Mal/Hizmet
Hesaplanan Kdv
Toplam
Stok kodu
Miktar
Kredi Kartı Tutarı
şeklindedir.

Buradaki durum ise şöyledir.
1-Kod kısmını forma girerken seçilebilecek şekilde vba da yazdığım kodların gelmesini sağlayabilirmiyiz(listbox)
2-HESAP KODU, EVRAK TARİHİ, EVRAK NO, GELİR AÇIKLAMA, KDV, TOPLAM , STOK KODU, MİKTAR, KREDİ KARTI TUTARI ALANLARINA yazılan direk kaydolmasını sağlayabilirmiyiz ekteki dosyada yazılıyor fakat her hangi bir tuşa basmadan veri girişi yapılamıyor, evrak tarihi ise metin olarak geliyor,
3-SATILAN MAL/HİZMET, HESAPLANAN KDV alanlarının ise kdv oranı sutununa göre hesaplanmasını sağlayabilirmiyiz,
4-Ayrıca biraz daha görsel olmasını sağlayabilirmiyiz
5-Durumu yeterince açık anlatabilmişimdir umarım uzun bir ardan sonra foruma geri döndüm sizden ricam değerli vaktinizi ayırıp bir kaç içinde müsait olursanız cevaplar mısınız

Saygılar
erhanaltay_@hotmail.com
05321640885
 

Ekli dosyalar

Merhaba,

Bir işletme defteri yapmak istiyorsunuz sanırım. İlk olarak şunu belirtmeliyim ki bir xls yi exe ye çeviremezsiniz.

Bir form üzerinden kayıt girmektense, excelin çalışma sayfasını kullanmanın daha uygun olduğunu düşünüyorum. En azından kullandığım programın kayıt girişi bana bu kolaylığı veriyor. Program adı "z***e". Kullandığınız programdan ilham alarak da güzel proje hazırlayabilirsiniz.

Diğer bir konu da, excelin satır sayısı amacınızı karşılayayıp karşılayamacağı...
 
Merhaba,

Bir işletme defteri yapmak istiyorsunuz sanırım. İlk olarak şunu belirtmeliyim ki bir xls yi exe ye çeviremezsiniz.

Bir form üzerinden kayıt girmektense, excelin çalışma sayfasını kullanmanın daha uygun olduğunu düşünüyorum. En azından kullandığım programın kayıt girişi bana bu kolaylığı veriyor. Program adı "z***e". Kullandığınız programdan ilham alarak da güzel proje hazırlayabilirsiniz.

Diğer bir konu da, excelin satır sayısı amacınızı karşılayayıp karşılayamacağı...

Evet işletme defteri yapmak istiyorum geçen gün söylediğiniz program silinmiş bende veriler yüklenene kadar bunu yapmak istedim alternatif olarak fakat bunu yapmakta ki amacım sadece bu sorunu çözmek değil vba da ilk adım olarak giriştim daha başka muhasebe sektörü ile ilgili fatura şablonları v.b. wordde ki gibi adres mektup birleştirme(düşeyara) vb konularla ilgili belli formlar yapmak için ilk çalışmam yardımcı olabilir misiniz yada bu konu ile ilgili vb [/B]varmıdır bunları öğrenebileceğim şu an kursuna gidecek kadar müsait değilim porgram haline gelememes, sorun değil onu sonra öğrenirim olmazsa saygılar
 
Buradaki durum ise şöyledir.
1-Kod kısmını forma girerken seçilebilecek şekilde vba da yazdığım kodların gelmesini sağlayabilirmiyiz(listbox)
2-HESAP KODU, EVRAK TARİHİ, EVRAK NO, GELİR AÇIKLAMA, KDV, TOPLAM , STOK KODU, MİKTAR, KREDİ KARTI TUTARI ALANLARINA yazılan direk kaydolmasını sağlayabilirmiyiz ekteki dosyada yazılıyor fakat her hangi bir tuşa basmadan veri girişi yapılamıyor, evrak tarihi ise metin olarak geliyor,
3-SATILAN MAL/HİZMET, HESAPLANAN KDV alanlarının ise kdv oranı sutununa göre hesaplanmasını sağlayabilirmiyiz,
4-Ayrıca biraz daha görsel olmasını sağlayabilirmiyiz
5-Durumu yeterince açık anlatabilmişimdir umarım uzun bir ardan sonra foruma geri döndüm sizden ricam değerli vaktinizi ayırıp bir kaç içinde müsait olursanız cevaplar mısınız


1-
bir adet user form ekleyin

userform1'in kod bölümüne geçerek aşağıdaki kodu yapıştır.

Private Sub TextBox1_Enter()
userform2.Show
End Sub

userform2 ye
1 adet combobox 1 adetde listbox ekleyin

ve kod bölümüne aşağıdaki kodları yapıştırın
Private Sub ComboBox2_Change()
On Error Resume Next
ComboBox2 = (ComboBox1)
Dim MyRange As Range
Dim noA As Integer
ListBox1.Clear
noA = WorksheetFunction.CountA(Sheets("carikart").Range("b:b")) 'BURAYA VERİNİN ALINACAĞI SAYFA YOLUNU UYGUN ŞEKİLDE YAZIN
For Each MyRange In Sheets("carikart").Range("b2:b" & noA) 'BURAYA VERİNİN ALINACAĞI SAYFA YOLUNU UYGUN ŞEKİLDE YAZIN
If Left(LCase(MyRange), Len(ComboBox1)) = LCase(ComboBox1) Then ListBox1.AddItem (MyRange)
Next
End Sub

Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
On Error Resume Next
Unload Me
userform1.textbox1 = ListBox1.List(ListBox1.ListIndex, 0)
Unload Me
End Sub
Private Sub UserForm_Initialize()
On Error Resume Next
Dim MyRange As Range
Dim noA As Integer
noA = WorksheetFunction.CountA(Sheets("carikart").Range("b:b")) 'BURAYA VERİNİN ALINACAĞI SAYFA YOLUNU UYGUN ŞEKİLDE YAZIN
For Each MyRange In Sheets("carikart").Range("b2:b" & noA) 'BURAYA VERİNİN ALINACAĞI SAYFA YOLUNU UYGUN ŞEKİLDE YAZIN
If Left(LCase(MyRange), Len(ComboBox1)) = LCase(ComboBox1) Then ListBox1.AddItem (MyRange)
Next
End Sub
 
2-
şimidye kadar edindiğim nacizane tecrubelere dayanarak en sağlıklı sistem bir buton ile yapılan aktarmadır.
aşağıdaki kodları kendinize uyarlayarak yapabilirsiniz.
Private Sub CommandButton99_Click()
On Error Resume Next

Set s1 = Sheets("vçekler")
a = s1.[a65536].End(3).Row + 1
s1.Cells(a, "a") = TextBox1.Text 'tarih
s1.Cells(a, "b") = TextBox2.Text 'alacaklaı
s1.Cells(a, "c") = TextBox3.Text 'vade
s1.Cells(a, "d") = TextBox4.Text 'banka
s1.Cells(a, "e") = TextBox5.Text 'şube
s1.Cells(a, "f") = TextBox6.Text 'hesap
s1.Cells(a, "g") = TextBox7.Text 'çek no
s1.Cells(a, "h") = TextBox8.Text ' tutar
s1.Cells(a, "ı") = TextBox9.Text 'durum
Set s2 = Sheets("veri")
a = s2.[a65536].End(3).Row + 1
s2.Cells(a, "c") = TextBox2.Text
s2.Cells(a, "a") = TextBox1.Text
s2.Cells(a, "b") = TextBox7.Text
s2.Cells(a, "e") = TextBox3 & " vadeli " & TextBox4 & " çeki"
s2.Cells(a, "ı") = TextBox8.Text




'A&F sütun aralığını A3 hücresi baz alınarak sıralatıyoruz
Range("A2:I65536").Select
Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlYes, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal


'ListView1.ListItems.Clear
'Call UserForm_Initialize


For tem = 1 To 9
Controls("textbox" & tem) = Empty
Next



End Sub

tarih formatı ve para formatı için aşağıdaki kodları kendinize uyarlayın

Private Sub UserForm_Initialize()
On Error Resume Next

Textbox = Format(Textbox, "dd.Mmmm.yyyy - hh:mm:ss")

Textbox.Text = Format(Textbox, "#,##0.00")
end sub

3- textboxlarda çarpma işlemi aşağıdaki şekilde yapılıyor kendinize uyarlayarak yapabilirsiniz
Private Sub bfiyat1_Change()
On Error Resume Next
tutar1.Text = Format(textbox * textbox, "#,##0.00")


End Sub
 
Son düzenleme:
çalışmamı sizlerinde yardımı sayesinde değiştirim

EKTE SON HALİ MEVCUT SİZDEN RİCAM

ÇALIŞMAYI AÇTIĞIMDA AÇILIŞ SAYFASI OLARAK ANA MENÜ GELMESİNİ

1) ANA MENÜ SAYFASINDA FORMUN ÇAĞRILDIKTAN SONRA KAYIT SAYFASINA GEÇİLMESİNİ VE KAYITLARIN BU SAYFAYA YAPILMASINI SAPLAYABİLİR MİYİZ.

2) TARİH FORMATINI YAPAMADIM
3) TOPLAM TEXTİNDE FORMÜL TOPLAMA SONUCU YAZMAYIP TOPLANACAK DEĞERLERİ ARALARINDA BOŞLUK BIRAKARAK YAN YANA YAZIYOR
4) BİR DE FORMÜLLÜ TEXTLERİN VERİLERİ GİRDİKTEN SONRA HEMEN HESAPLAMASINI SAĞLAYABİLİRMİYİZ BOŞUK TUŞUNA BASMADAN HESAPLAMIYOR

Saygılar.
 

Ekli dosyalar

Tarih Textbox ınuz için

Kod:
Private Sub EVRAKTARİHİ_Change()
    On Error Resume Next
    EVRAKTARİHİ.MaxLength = 10
    Select Case Len(EVRAKTARİHİ)
    Case 2, 5
    EVRAKTARİHİ = EVRAKTARİHİ & "."
    End Select
End Sub

Satınalınan hizmet, Hesaplanan KDV ve toplam textboxlarınız içinde

Kod:
Private Sub SATILANMALHİZMET_Change()
If SATILANMALHİZMET = "" Then
deg1 = 0
Else
deg1 = SATILANMALHİZMET
End If
If HESAPLANANKDV = "" Then
deg2 = 0
Else
deg2 = HESAPLANANKDV
End If
TOPLAM = Replace(CDbl(deg1) + CDbl(deg2), ".", ",")
End Sub

Private Sub HESAPLANANKDV_Change()
If SATILANMALHİZMET = "" Then
deg1 = 0
Else
deg1 = SATILANMALHİZMET
End If
If HESAPLANANKDV = "" Then
deg2 = 0
Else
deg2 = HESAPLANANKDV
End If
TOPLAM = Replace(CDbl(deg1) + CDbl(deg2), ".", ",")
End Sub

Kodlarını kullanabilirsiniz
 
Yardımlarınız, emeğiniz çok teşekkürler cok bilinçli olmasam da araştırarak sizlerin yarıdmını alarak 13 06 2013 de başladığım çalışmamı an itibari ile bitirdim allah razı olsun

Saygılar.
 
Merhabalar

yukarıda yazdıklarınız la ve son olarak sayın barabba ' nın da ekleri ile son olarak

*excel açıldığında direk formun gelmesini yaptık
*EVRAK TARİHİ ni güncelledim
*HESAP KODUNU nu güncelledim
*HESAPLANAN KDV yi güncelledim (sayı formatını)
*TOPLAM ı güncelledim (sayı formatını)
*KREDİKARTITUTARI nı güncelledim (sayı formatını)

Fakat son durumda
* sayısal (kdv ye 1000 tl dahil büyük rakam girdiğimde satılan mal ve hizmet tutarını hesaplamıyor , sayı formatına dönüştürmüyor,)
*Tüm sayısal alanları kaydet dediğimde metin olarak excel e atıyor
*sayın barabba eklediğiniz dosyada da yine kdv ye 1000 tl ve üstü girdiğinzde yine aynı sorun var

Bu bağlamda sayın barabba 'nın ve bendeki son halini eklediğim dosyayı birleştirip kdv dahil hariç check kutusu yapıp (dahil veya hariç ) ;

kdv oranına göre (dahil veya hariç ) : toplam girdiğimizde satılan hizmet bedeli ve kdv yi hesaplamasını

kdv oranına göre (dahil veya hariç ) : sat. hiz. bed. girdiğimizde kdv ve toplamı hesaplamını

yapabilirmiyiz

ayrıca bundan sonraki hedefim yine sizlerin de katkıları yardımları ile yapamaya çalışacağım bilanço usulunde evrak işlemek için buna benzer bir çalışma yapmak ama o daha komplike yapmaya kalkışsak mı bilmiyorum

Saygılar.

Yardımlarınız için şimdiden teşekkürler
 
Bakabilen oldumu acaba

malum yaz ayları bekliyorum sabırsızlıkla yarıdmlarınızı
 
Geri
Üst