If you have the folder separator included in the savefolder definition, you don't also need it in the saveas string
If the filenames match your description with blocks separated by hyphens then the following should save the attachments in the subfolder associated with the account name in the filename. If the account folder may not exist you must create it - see the CreateFolders function. This will create an missing folder.

Option Explicit

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) & "\"
            CreateFolders saveFolder
        End If
        objAtt.SaveAsFile saveFolder & objAtt.DisplayName
        Set objAtt = Nothing
    Next
End Sub

Private Function CreateFolders(strPath As String)
'An Office macro by Graham Mayor - www.gmayor.com
Dim strTempPath As String
Dim lngPath As Long
Dim vPath As Variant
Dim oFSO As Object
    Set oFSO = CreateObject("Scripting.FileSystemObject")
    vPath = Split(strPath, "\")
    strPath = vPath(0) & "\"
    For lngPath = 1 To UBound(vPath)
        strPath = strPath & vPath(lngPath) & "\"
        If Not oFSO.FolderExists(strPath) Then MkDir strPath
    Next lngPath
lbl_Exit:
    Set oFSO = Nothing
    Exit Function
End Function