You just copy and paste the code as written. It replaces your original code.
It works on the premise that your attachments have the name format - "Calls-[insert account name]-[Insert Date].pdf", which comprises three sections separated by hyphens. It uses the middle section (the account name) to determine where to file the attachments and files them in a sub folder (with that account name) of 'saveFolder' which from your original code is "C:\". Save folder can be any path you define and, as long at the root of that path is available, the process will create any required folder that doesn't exist.
Attachments that don't match that format are saved in the 'saveFolder' folder. - here "C:\". Note that it is not the best idea to save in the root of the C drive so to accommodate a change from that it might be better to move the CreateFolders line outside the conditional statement e.g.
Public Sub saveAttachtoDisk(itm As Outlook.MailItem)
Dim objAtt As Outlook.Attachment
Dim saveFolder As String
saveFolder = "C:\"
For Each objAtt In itm.Attachments
If InStr(1, objAtt.fileName, "-") > 0 Then
saveFolder = saveFolder & Split(objAtt.fileName, "-")(1) & "\"
End If
CreateFolders saveFolder 'move this line to here
objAtt.SaveAsFile saveFolder & objAtt.DisplayName
Set objAtt = Nothing
Next
End Sub
The remaining code and the Createfolders function are still required.