• DİKKAT

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

İş Numarasına Göre Faturalandırma

Katılım
29 Ağustos 2009
Mesajlar
398
Excel Vers. ve Dili
2007 Türkçe
Merhaba arkadaşlar.
Bir fatura takip programı yapmak istiyorum.
Yardımlarınıza ihtiyacım var.

Yapılmak istenenler ile ilgili bilgiler
-Aynı iş numarasına bir başka fatura kesilmemeli
-Aynı fatura numarası ile başka fatura kesilmemeli
-İş numarası seçildiğinde "firma ismi, işin adı vs..." gibi yerlere işi kontrol etmek için bilgiler otomatik gelmeli.
-Form açılıp İş no seçildiğinde fatura numarası +1 artırılmalı.
-Fatura kesilen işler, fatura kesilenler formunda görülebilmeli ve firmaya, tarihe, fatura no ve bedel' e göre listview de sıralanabilmeli.
-Fatura kesilmeyen işler, fatura kesilmeyenler formunda görülebilmeli ve firmaya tarihe, fatura no ve bedel' e göre listview de sıralanabilmeli.

Teşekürler, "Civan".
 

Ekli dosyalar

  • hhh1.jpg
    hhh1.jpg
    23.7 KB · Görüntüleme: 17
  • hhh2.jpg
    hhh2.jpg
    30.1 KB · Görüntüleme: 8
  • hhh3.jpg
    hhh3.jpg
    31.4 KB · Görüntüleme: 1
  • Fatura Kesme.rar
    Fatura Kesme.rar
    193.1 KB · Görüntüleme: 54
Merhaba arkadaşlar.
Bir fatura takip programı yapmak istiyorum.
Yardımlarınıza ihtiyacım var.

Yapılmak istenenler ile ilgili bilgiler
-Aynı iş numarasına bir başka fatura kesilmemeli
-Aynı fatura numarası ile başka fatura kesilmemeli
-İş numarası seçildiğinde "firma ismi, işin adı vs..." gibi yerlere işi kontrol etmek için bilgiler otomatik gelmeli.
-Form açılıp İş no seçildiğinde fatura numarası +1 artırılmalı.
-Fatura kesilen işler, fatura kesilenler formunda görülebilmeli ve firmaya, tarihe, fatura no ve bedel' e göre listview de sıralanabilmeli.
-Fatura kesilmeyen işler, fatura kesilmeyenler formunda görülebilmeli ve firmaya tarihe, fatura no ve bedel' e göre listview de sıralanabilmeli.

Teşekürler, "Civan".

merhaba
syn Civan Jack,
program siparişiniz alınmış olup ilgili birimler tarafından üzerinde çalışılmaya başlanması için detayların görüşülmesi gerekmektedir.
 
Kusuruma bakmayın Süleyman bey, çok özür dilerim. :(
Gerçekten, sipariş veriyormuş gibi yazmışım... :(
Ben program bittiğinde nasıl bir hâl alacağını yazmıştım sadece...
Ama yanlış anlatmış ve anlaşılmışım...

Tekrar tekrar herkesten özür dilerim...
 
Selamlar. :hey:

ComboBoxta seçilen İş no ya göre textboxlara veriyi yazdırdım.
Fatura Kesilen ve Fatura Kesilmeyenleri listviewlerde gösterdim.
Elimden geleni yaptım, ama istediğim olmadı :(
Meselâ; ComboBoxta İş No olarak A00010 u seçip kaydettiğimde İş No A0002 ye kaydediyor. Yani kaydetmesi gereken yere kaydetmiyor.
Aynı İş No dan başka fatura kesmeme olayını ve Aynı Fatura No dan başka fatura kesmemeyi de yapamadım :( Ufffff 3 saattir uğraşıyorum :(

Şimdiye kadar yaptıklarımı ekte görebilirsiniz.
Teşekkürler...
 

Ekli dosyalar

aynı numaraya kaydetmemek için aşağıdaki kodu kullanabilirsin ( kendine adapte ederek )

Private Sub cmdfatveri_Click()
Sheets("FATURAVERİ").Select

For Each ayni In Range("B2:B1000")
If ayni.Value = cbfatno.Value Then
MsgBox " BU NUMARA KAYITLARDA VAR "
Exit Sub
End If
Next ayni

Range("a2").Select

Do While Not IsEmpty(ActiveCell)
ActiveCell.Offset(1, 0).Select
Loop
If Range("a2").Value = "" Then
Range("a2").Value = 1
Range("a2").Select
Else
ActiveCell.Value = ActiveCell.Offset(-1, 0).Value + 1

End If
ActiveCell.Offset(0, 1) = cbfatno
ActiveCell.Offset(0, 2) = txtfattar
ActiveCell.Offset(0, 3) = cbyukl
ActiveCell.Offset(0, 4) = txtyuklad

" " " " "" ""

aciklama = "KAYIT İŞLEMİ TAMAMLANDI"
dugme = vbOKOnly + vbInformation + vbDefaultButton1
baslik = "KAYIT"

MsgBox aciklama, dugme, baslik
ActiveCell.Offset(0, 1).Select ' A ve B sütunlarını korumak ve yanlış hücreye
'veri girişini önlemek için
End Sub
 
Kaydetmek için aşağıdaki kodu kendinize uyarlayın

******************************

Private Sub cmdfatveri_Click()
Sheets("FATURAVERİ").Select

For Each ayni In Range("B2:B1000")
If ayni.Value = cbfatno.Value Then
MsgBox " BU NUMARA KAYITLARDA VAR "
Exit Sub
End If
Next ayni

Range("a2").Select

Do While Not IsEmpty(ActiveCell)
ActiveCell.Offset(1, 0).Select
Loop
If Range("a2").Value = "" Then
Range("a2").Value = 1
Range("a2").Select
Else
ActiveCell.Value = ActiveCell.Offset(-1, 0).Value + 1

End If
ActiveCell.Offset(0, 1) = cbfatno
ActiveCell.Offset(0, 2) = txtfattar
ActiveCell.Offset(0, 3) = cbyukl
ActiveCell.Offset(0, 4) = txtyuklad
ActiveCell.Offset(0, 5) = txtmusvd
ActiveCell.Offset(0, 6) = TextBox58
ActiveCell.Offset(0, 7) = TextBox62



aciklama = "KAYIT İŞLEMİ TAMAMLANDI"
dugme = vbOKOnly + vbInformation + vbDefaultButton1
baslik = "KAYIT"

MsgBox aciklama, dugme, baslik
ActiveCell.Offset(0, 1).Select ' A ve B sütunlarını korumak ve yanlış hücreye
'veri girişini önlemek için
End Sub
 
Teşekkürler Sn. baka, müsait bir zamanda inceleyip, sonucu sizlerle paylaşacağım.
 
İlgili kodları şu şekilde değiştirdim, fakat sonuca ulaşamadım.
Aşğıdaki kodların ne anlama geldiğini anlayamadım.

Do While Not IsEmpty(ActiveCell)
ActiveCell.Offset(1, 0).Select
Loop
If Range("a2").Value = "" Then
Range("a2").Value = 1
Range("a2").Select
Else
ActiveCell.Value = ActiveCell.Offset(-1, 0).Value + 1

End If
ActiveCell.Offset(0, 1) = ComboBox1.Value
ActiveCell.Offset(0, 23) = TextBox4.Value
ActiveCell.Offset(0, 24) = TextBox5.Value
ActiveCell.Offset(0, 25) = TextBox6.Value
 
Aşağıdaki gibi bir kod yazdım ama tam olarak doğru çalışmıyor.
Comboboxtan iş noyu seçtiğimde eğer faturası kesilmişse; mesajla fatura kesilmiş uyarısı vermesi lazım.
Eğer faturası kesilmemişse; seçilen iş no'nun karşılığına textbox4, textbox5 ve textbox6 daki verileri yazması lazım.
Seçilen iş no'dan varsa karşılığına yazdırmayı yapamadım.
Yardımcı olur musunuz ?

Teşekkür ederim.

Kod:
Private Sub CommandButton5_Click()
Sheets("kayıt").Select
If ComboBox1.Text = "" Then MsgBox "Hiç veri yok": Exit Sub
sat = Worksheets("kayıt").[X2:Z1000].End(3).Row + 1
If WorksheetFunction.CountIf(Worksheets("kayıt").Range("X2:X1000"), TextBox4.Text) = ["X2:Z1000"] Then
MsgBox "Faturası Kesilmiş", vbCritical, "ALOOOOOO"
Else
Sheets("kayıt").Cells(sat, 24).Value = TextBox4.Text
Sheets("kayıt").Cells(sat, 25).Value = TextBox5.Text
Sheets("kayıt").Cells(sat, 26).Value = TextBox6.Text

End If
End Sub
 
Şöyle bir kod budum, ama comboboxta seçilen değerin karşılığna yazdıramıyorum bir türlü.

Kod:
Private Sub CommandButton1_Click()
If TextBox1.Text <> Empty And TextBox2.Text <> Empty And TextBox4.Text <> Empty And _
        ComboBox1.Text <> Empty Then
TextBox3 = Sayfa1.Range("a65536").End(3).Value + 1
Else
    MsgBox "Eksik bilgi girilmiş", vbExclamation, "Www.ExcelVBA.Net"
    CommandButton2_Click
        Exit Sub
End If
With Sayfa1
For Each bul In Sayfa1.Range("a2:a" & Range("a65536").End(3).Row)
    If bul = ComboBox1 Then
    Label5.Visible = True
        Exit Sub
    End If
Next bul
For Each bul In .Range("a2:a" & Range("a65536").End(3).Row)
    If bul = ComboBox1 Then
     
        bul.Offset(i, 1) = TextBox1
        bul.Offset(i, 2) = TextBox2
        bul.Offset(i, -1) = TextBox3
        bul.Offset(i, 3) = TextBox4
        UserForm_Initialize
        Exit For
    Else
        .Range("a65536").End(3).Offset(0, -1) = .Range("a65536").End(3) + 1
        .Range("a65536").End(3).Offset(0, 0) = ComboBox1
        .Range("a65536").End(3).Offset(0, 1) = TextBox1
        .Range("a65536").End(3).Offset(0, 2) = TextBox2
        .Range("a65536").End(3).Offset(0, 3) = TextBox4
        UserForm_Initialize
        Exit For
    End If
Next bul
End With
End Sub

Private Sub CommandButton2_Click()
Dim bul As Range
For Each bul In Sayfa1.Range("a2:a" & Range("a65536").End(3).Row)
    If bul = ComboBox1 Then

        TextBox1 = bul.Offset(i, 1)
        TextBox2 = bul.Offset(i, 2)
        TextBox3 = bul.Offset(i, 0)
        TextBox4 = bul.Offset(i, 3)
    Else
        TextBox3 = Sayfa1.Range("a65536").End(3).Value + 1
    End If
Next bul
End Sub

Private Sub CommandButton3_Click()
Unload Me
End Sub

Private Sub CommandButton4_Click()
Dim bul As Range
For Each bul In Sayfa1.Range("a2:a" & Range("a65536").End(3).Row)
    If bul.Value = ComboBox1.Value Then
        bul.Select
        Selection.EntireRow.Delete
        For i = 2 To Range("a65536").End(3).Row
            Cells(i, 1).Value = i - 1
        Next i
    End If
Next bul
End Sub

Private Sub CommandButton5_Click()
Dim bul As Range
For Each bul In Sayfa1.Range("a2:a" & Range("a65536").End(3).Row)
    If bul.Value = ComboBox1.Value Then
      
        bul.Offset(0, 1).Value = TextBox1.Value
        bul.Offset(0, 2).Value = TextBox2.Value
        bul.Offset(0, 3).Value = TextBox4.Value
    End If
Next bul
End Sub

Private Sub UserForm_Initialize()
Dim i As Byte
ComboBox1.Clear
For i = 2 To [a65536].End(3).Row
ComboBox1.AddItem Cells(i, 1)
Next i
End Sub
 
Çalışmayı değiştirdim, son halini ekliyorum.
Fakat, textbox1 - textbox2 ve textbox4 ü yazıp kaydettiğimde, sayı olarak görünmüyorlar, yani uyarının üzerine basıp sayıyıa dönüştür demem gerekiyor, formatlarda mı bir sorun var acaba ?
Birde ay ve günü yanlış yazıyor; 11/25/2010 gibi - 25/11/2010 olması lazım.

adszkg.png


Teşekkür ederim.
 

Ekli dosyalar

Texboxtaki Calendar değerinini formatını bu kodla düzelttim.

Kod:
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
TextBox1.Value = Format(Calendar1, "dd.mm.yyyy")
End Sub

Ama textboxlardaki verileri, daha doğrusu rakamları hücreye girdiğimde, sayıya dönüştürme olayını yapamadım.

Bakabilir misiniz ?
 
Bu konuda yardım edebilir misiniz ?
 
Geri
Üst