DataNumen CRM – Et gratis kundeforholdsstyringssystem i Excel

En fornøyd kunde er svært vanskelig å oppnå og beholde. Hvis du sliter med å vedlikeholde kundenes database, kan du med dette verktøyet enkelt legge til ny klientinformasjon, redigere eller slette eksisterende klientinformasjon og hente dem raskt.

Last ned nå

Hvis du ønsker å starFor å bruke programvaren så snart som mulig, kan du:

Last ned programvaren nå

Ellers, hvis du vil gjøre DIY, kan du lese innholdet nedenfor.

La oss forberede GUI

Lag 3 ark og navngi det som "Entry", "Client" og "Follow-up". På arket "Oppføring" oppretter du felt, overskrifter og knapper.Arkoppføring

Arkklient

Arkoppfølging

La oss gjøre det funksjonelt

Kopier makroen til en ny makroaktivert arbeidsbok og legg den til i en ny modul. Fest makroen "Add_Client" til knappen "Add". Makroen "Upldate_Client" skal festes til knappen "Oppdater" og makroen "Følg_opp" til knappen "Send"

Sub Add_client()
    Dim lr As Long
    Dim r As Long
    lr = client.Range("A" & Rows.Count).End(xlUp).Row + 1
    client.Range("A" & lr).Value = entry.Range("B6").Value
    client.Range("B" & lr).Value = entry.Range("B9").Value
    client.Range("C" & lr).Value = entry.Range("B12").Value
    client.Range("D" & lr).Value = entry.Range("B15").Value
    client.Range("E" & lr).Value = entry.Range("B18").Value
    Call Module1.Clear_Add_Client
End Sub

Sub Clear_Add_Client()
    Range("B6:F6,B9:F9,B12:F12,B15:F15,B18:F18").Select
    Range("B18").Activate
    Selection.ClearContents
    Range("B6:F6").Select
End Sub

Sub p_client_dropdown()
    On Error Resume Next
    Sheets("Temp").Delete
    Sheets.Add.Name = "Temp"
    On Error GoTo 0
    client.Select
    client.Columns("A:A").Select
    Selection.Copy
    Sheets("Temp").Select
    Sheets("Temp").Paste
    Application.CutCopyMode = False
    Sheets("Temp").Range("$A$1:$A$10000").RemoveDuplicates Columns:=1, Header:=xlYes
    Dim lr As Long
    Dim r As Long
    lr = Sheets("Temp").Range("A" & Rows.Count).End(xlUp).Row
    Dim prodlist As String
    For r = 2 To lr
        If prodlist = "" Then
            prodlist = Sheets("Temp").Range("A" & r).Value
        Else
            prodlist = prodlist & "," & Sheets("Temp").Range("A" & r).Value
        End If
        Next r
        With entry.Range("H6").Validation
            .Delete
            .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
            xlBetween, Formula1:=prodlist
            .IgnoreBlank = True
            .InCellDropdown = True
            .InputTitle = ""
            .ErrorTitle = ""
            .InputMessage = ""
            .ErrorMessage = ""
            .ShowInput = True
            .ShowError = True
        End With
        With entry.Range("N6").Validation
            .Delete
            .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
            xlBetween, Formula1:=prodlist
            .IgnoreBlank = True
            .InCellDropdown = True
            .InputTitle = ""
            .ErrorTitle = ""
            .InputMessage = ""
            .ErrorMessage = ""
            .ShowInput = True
            .ShowError = True
        End With
End Sub
    
Sub Update_Client()
    Dim lr As Long
    lr = client.Range("A" & Rows.Count).End(xlUp).Row
    For r = 2 To lr
        If client.Range("A" & r).Value = entry.Range("H6").Value Then
            client.Range("B" & r).Value = entry.Range("H9").Value
            client.Range("C" & r).Value = entry.Range("H12").Value
            client.Range("D" & r).Value = entry.Range("H15").Value
            client.Range("E" & r).Value = entry.Range("H18").Value
            Exit For
        End If
        Next r
End Sub

Sub Follow_up()
    Dim lr As Long
    lr = fup.Range("A" & Rows.Count).End(xlUp).Row + 1
    fup.Range("A" & lr).Value = entry.Range("N6").Value
    fup.Range("B" & lr).Value = entry.Range("N9").Value
    fup.Range("C" & lr).Value = entry.Range("N12").Value
End Sub

Kopier denne makroen til regnearkmodulen til arket "Entry"

Private Sub Worksheet_Change(ByVal Tarfå som rekkevidde) Hvis Target.Address = "$H$6" Deretter Range("H9").Value = Application.WorksheetFunction.VLookup(Target.Value, client.Range("A1:E1000"), 2, False) Range("H12").Value = Application.WorksheetFunction.VLookup(Target.Value, client.Range("A1:E1000"), 3, False) Range("H15").Value = Application.WorksheetFunction.VLookup(Target.Value, client.Range("A1:E1000"), 4, False) Range("H18").Value = Application.WorksheetFunction.VLookup(Target.Value, client.Range("A1:E1000"), 5, False) End If End Sub

Hvordan virker det?

"Add_Client"-makroen identifiserer den siste raden i arket "Client" og legger til klientdata fra arket "Entry". Med «Update_Client»-makroen kan du oppdatere kundens detaljer. Oppfølgingsmakroen vil hjelpe deg med å spore møtene dine med klienten din. Imidlertid, hvis en Excel-korrupsjon oppstår, kan det hende at rullegardinmenyene ikke fungerer. I et slikt tilfelle er det bare å fjerne det ødelagte området, legge til datavalideringen igjen.

Forfatterintroduksjon:

Nick Vipond er en datagjenopprettingsekspert innen DataNumen, Inc., som er verdensledende innen datagjenopprettingsteknologier, inkludert ordkorrupsjon og Outlook-programvareprodukter. For mer informasjon besøk www.datanumen. Med.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket *