VBS code aanpassen zodat gezocht wordt in specifieke Outlookfolder en niet in alle

Status
Niet open voor verdere reacties.

SoSaid

Gebruiker
Lid geworden
15 aug 2013
Berichten
24
Hallo,

Ik heb een VBscript waarmee alle emails in outlook geteld worden en geexporteerd worden naar Excel.

1 - We willen dat er specifiek gezocht wordt binnen de hoofdfolder "Verwerkte mail" en de onderliggende subfolders.


Wie kan mij helpen? Hieronder de Code


[CPP]
Deleted/Invalid
[/CPP]
 
Laatst bewerkt:
Je loopt nu door alle folders heen, en dat moet je dan natuurlijk niet doen. Je kunt een keten van (sub)folders maken die je aan elkaar last:
Code:
Set ns = GetNamespace("MAPI")
' Gebruik onderstaande routine om een folder te selecteren...
Set SubFolder = ns.PickFolder
''Set SubFolder = Application.GetNamespace("MAPI").PickFolder
' Of, als je vanuit een vaste map wilt beginnen:
Set Inbox = ns.GetDefaultFolder(olFolderInbox)
Set SubFolder = Inbox.Folders("Verwerkte mail").Folders("Helpdesk") 'TYP HIER DE NAAM VAN DE SUBFOLDER IN OUTLOOK.
etc.
 
Om een idee te geven:

Code:
Sub M_folders()
   With GetNamespace("Mapi")
        For Each fl In .Folders
            c00 = c00 & vbLf & fl.Name
            For Each fl1 In fl.Folders
               c00 = c00 & vbLf & vbTab & fl1.Name
                For Each fl2 In fl1.Folders
                   c00 = c00 & vbLf & vbTab & vbTab & fl2.Name
                    For Each fl3 In fl2.Folders
                       c00 = c00 & vbLf & vbTab & vbTab & vbTab & fl3.Name
                    Next
               Next
            Next
        Next
    End With
    MsgBox c00
End Sub
 
Bedankt voor de reacties.
Ik ben geen programmeur en heb de code gevonden op internet en in gebruik genomen. IK heb het geprobeerd maar krijg een leeg excel bestand terug.

Kunnen jullie misschien jullie codes verwerken in mijn aangeleverde code?

Om een voorbeeld te geven van de niveau's binnen outlook:
> Verwerkte Mail
>> Postvak IN
>>>Verdeeld
>>>> Anne
>>>> Inge
>>>> Jan
>>>> ...etc

Alvast bedankt :)
 
Laatst bewerkt:
Bedoel je dat [Verwerkte Mail] een aparte account is?
 
Hallo OctaFish

Hieronder een printscreen van hoe de inbox van Verwerkte Mail eruit ziet. Misschien is dit duidelijker.
 
Laatst bewerkt:
Dat riekt inderdaad als een eigen account. Ik neem aan dat je eigen postbus daar dan ook nog bij staat, of log je specifiek in op die postbus, dus dat je bij het starten van Outlook eerst een profiel kiest?
 
Ja, mijn eigen inbox staat er ook & ook nog een andere postbus van een andere afdeling. Daarom is het hartstikke veel wat er geteld en geexporteerd wordt.
 
Laatst bewerkt:
jazeker SNB, maar het is mij niet gelukt om de code correct te gebruiken omdat de exports steeds een lege excel bestand was of foutmedingen of geen verschil in exportbestand.
Daarom stelde ik de vraag of jullie een voorbeeld kunnen maken met de complete code.
 
Laatst bewerkt:
Volgens mij moet je moet deze code een eind kunnen komen:
Code:
Sub ExportMAIL()
    On Error Resume Next
    Set objExcel = CreateObject("Excel.Application")
    objExcel.Visible = False
    objExcel.DisplayAlerts = False
    Set oWB = objExcel.Workbooks.Add
     
    Set NS = Outlook.GetNamespace("MAPI")
    For Each olAccount In Session.Accounts
        For Each olMain In NS.Folders
            If olMain.Name = "Verwerkte mail" Then
                EnumFolders olMain
            End If
        Next
    Next
    Set NS = Nothing
    Set OlApp = Nothing
    
    oWB.SaveAs "u:\OutlookCounter.xlsx"
    objExcel.Quit
    Set objExcel = Nothing
End Sub
 
Hallo OctaFish, ik heb de code overgenomen en heb oWB.SaveAs "u:\OutlookCounter.xlsx" veranderd naar C: maar er wordt niets gegenereed. Er komt geen bestand uit. Kun je er misschien nog een keer naar kijken?
 
Laatst bewerkt:
Leest hij wel de mappen uit? Ik zou, zeker in de testperiode, .Visible=False nooit gebruiken, maar altijd: .Visible=True. Tot je zeker weet dat er wordt uitgevoerd.
Loop er ook eens stapsgewijs doorheen. In mijn situatie deed-ie het verder prima.
 
Het lijkt er helaas niet op dat de mappen uitgelezen worden als ik jouw code afvuur

Even voor de zekerheid, ik heb jouw script gekopieerd en een .vbs bestand gemaakt/opgeslagen en afgevuurd. Ik heb mijn code totaal niet gebruikt voor deze test. Enige wat ik verander in dit geval is opslaan naar C: en Visible=True

Als ik de code gebruik waarmee ik deze topic start, dan zie ik in taakbeheer dat wscript.exe en EXCEL.EXE worden aangeroepen en gesloten. Dat zie ik ook niet als ik je code gebruik.
 
Laatst bewerkt:
jazeker SNB, maar het is mij niet gelukt om de code correct te gebruiken omdat de exports steeds een lege excel bestand was of foutmedingen of geen verschil in exportbestand.
Daarom stelde ik de vraag of jullie een voorbeeld kunnen maken met de complete code.


Er staat alleen maar een messagebox in mijn code. Iets anders kan er niet uitkomen.

Waarom geef je dan niet eerder gedetailleerde feedback ?
 
Jammer dat mijn post niet helder was. Ik ga het nog een keer proberen :)

Huidige situatie: Het Excel bestand dat gegenereerd wordt met de code waarmee ik de topic startte is Goed maar het kan beter omdat het teveel informatie oplevert.

Gewenste situatie: Wat de code nu doet is een tabel genereren in Excel met in kolom-A alle outlook folders van verschillende mailboxen en in kolom B De count. Dit is teveel van het goed en we hebben slechts van 1 mailbox deze informatie nodig en daarbinnen van specifieke folders en sub folders.

De uitkomst van de code waarnaar ik zoek is:
- een kleinere tabel in Excel met in kolom-A alleen de gewenste folders en in kolom-B: De count.

Hopelijk kunnen jullie er nog een keer naar kijken.
Alvast bedankt
 
Laatst bewerkt:
Even voor de goede orde: je stelt een vraag in het VBA forum; dan krijg je uiteraard VBA code terug. Ik krijg echter de indruk dat je met een scriptje bezig bent. Da's heel wat anders. Mijn code draai je vanuit Outlook bijvoorbeeld. Niet vanuit een batchfile o.i.d.
 
Hallo Octafish en SNB,
Ik zie dat ik de topic op de verkeerde plek heb geplaatst. Ik zal de vraag elders op de site plaatsen.
ik sluit hierbij deze topic
bedankt voor jullie reacties.
 
Laatst bewerkt:
Je kan ook aan de moderator vragen of hij 'm naar het juiste forum verplaatst.
 
Ik zat daar al aan te denken, maar deze topic is nu al erg lang geworden. ik kan beter met een lege topic beginnen
Thx :-)
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan