Header Ads Widget

Responsive Advertisement

VBA'da Dinamik Müşteri Kayıt Formu

 Bu yazıda, Excel'de dinamik bir müşteri  kayıt formu oluşturmayı öğreneceğiz . Çağrı merkezi sektöründe, müşterilerden gelen çağrıları alırken çağrı kayıtlarını tutmamız gerekiyor. Çağrı kayıtlarını hazırlarken, bu kayıtları düzgün bir şekilde saklamamız şart. Daha sonra, ilgili departmana veya ekibe işi atamak için girişleri ürün, ülke, departman vb. bazı değerlere göre ayırıyoruz.

Diyelim ki tüm çağrı kayıtlarını ülkelere göre ayırmamız gerekiyor. Daha sonra, ilgili ülke yetkilileriyle verileri paylaşarak takip işlemlerini gerçekleştirmemiz ve sorunları çözmemiz gerekiyor. Bu durumda, çağrıları alırken kayıtları ayrı çalışma sayfalarına yazmak her zaman iyi bir fikir olacaktır.

Ancak, bir yöneticinin çağrı alırken ve müşterilere yardımcı olurken birden fazla sayfayı yönetmesi zor bir iş olacaktır. Bu durumda, VBA kodu yardımıyla Excel'de Dinamik Müşteri Çağrı Kayıt Formu geliştirebiliriz. Bu form, kullanıcının çağrı alırken verileri girmesine ve göndermesine yardımcı olacaktır. Form, Müşteri Çağrı Kayıt Formunda ülke seçimine bağlı olarak verileri ilgili ülkenin sayfasına aktaracaktır.

Burada zamandan büyük ölçüde tasarruf edebilir ve ayrıştırılmış verileri daha sonraki sorun çözümleri, takip çalışmaları ve veri analizi için kullanabiliriz.

Excel'de Müşteri  Kayıt Formu Nasıl Oluşturulur?

Bu otomatik ve dinamik formu geliştirmek nispeten çok kolay. YouTube eğitim videomuzu izledikten sonra bu formu hızlıca oluşturabilirsiniz.

Lütfen bu eğitim videosunu izleyin.





Verileri göndermek için VBA kodu

Sub KAYDET_FORM()



  Dim shBOLUM As Worksheet

  Dim shANAFORM As Worksheet


  Dim iCurrentRow As Integer

 


  Dim sBOLUMADI As String


  Set shForm = ThisWorkbook.Sheets("ANA FORM")


On Error GoTo HataMesajı 'programın kırılmasını önlemek ve yanlış işlem yaptırmamk için


If Worksheets("ANA FORM").Range("F9").Value = "" Then

MsgBox ("Lütfen Çalıştığı Bölümü Seçin")


HataMesajı: 'programın kırılmasını önlemek ve yanlış işlem yaptırmamk için

 Cells(9, 6).Select 'seçilmeyen hücreye odaklanma

 Cells(9, 6).Interior.Color = vbYellow

 

 Range("F9") = ("Bölüm Seçiniz") 'hücrede çıkacak mesaj

 

 

 

Else



  sBOLUMADI = shForm.Range("F9").Value


  Set shCountry = ThisWorkbook.Sheets(sBOLUMADI)


 iCurrentRow = shCountry.Range("A" & Application.Rows.count).End(xlUp).Row + 1


    


 With shCountry

 



    .Cells(iCurrentRow, 1) = iCurrentRow - 1 'OTOMATİK SIRA NO VERME


    .Cells(iCurrentRow, 2) = shForm.Range("F5")


    .Cells(iCurrentRow, 3) = shForm.Range("F6")


    .Cells(iCurrentRow, 4) = shForm.Range("F7")


    .Cells(iCurrentRow, 5) = shForm.Range("F8")


    .Cells(iCurrentRow, 6) = shForm.Range("F10")


    .Cells(iCurrentRow, 7) = shForm.Range("F11")

    

    .Cells(iCurrentRow, 8) = shForm.Range("F12")


    .Cells(iCurrentRow, 9) = shForm.Range("F13")

    

   ' .Cells(iCurrentRow, 10) = shForm.Range("F13")

    

    '.Cells(iCurrentRow, 11) = Application.UserName 'PC DEKİ KULLANICI ADI


    .Cells(iCurrentRow, 10) = Format([Now()], "DD-MMM-YYYY HH:MM:SS") 'TARİH SAAT

    



 End With


 shForm.Range("F4,F5,F6,F7,F8,F9,F10,F11,F12").Value = ""


 MsgBox "KAYDEDİLDİ!"

End If


End Sub


Sub TEMİZLE_FORM()


      Dim iMessage As VbMsgBoxResult


      iMessage = MsgBox("FORM VERİLERİ SİLİNSİN Mİ?", vbYesNo + vbQuestion, "FORMU TEMİZLE")


      If iMessage = vbNo Then Exit Sub

      ' Range("F4:F10").Clear

    ThisWorkbook.Sheets("ANA FORM").Range("F4,F5,F6,F7,F8,F9,F10,F11,F12 ").Value = ""

 

    

End Sub



Yorum Gönder

0 Yorumlar