account kiezen bij "mailto"

Status
Niet open voor verdere reacties.

schoe459

Gebruiker
Lid geworden
3 mei 2010
Berichten
22
Ik heb inmiddels Office 2010 en hier is het mogelijk om via onderstaande aanpassing in het register mijn eerdere probleem gedeeltelijk op te lossen.

Stel, u hebt meerdere e-mailaccounts in Outlook. U wilt per e-mail aangeven via welk account de mail wordt verstuurd. Vergeet u wel eens het juiste account op te geven? U kunt dit door Outlook laten afdwingen. Standaard is dit niet mogelijk, maar een aanpassing in het Windows-register doet wonderen. Uiteraard zorgt u voor een goede back-up voordat u het register aanpast. Open het register (kies Start en typ Regedit) en ga naar de sleutel HKEY_CURRENT_USER\Software\Policies\Microsoft\Office\14.0\Outlook\Options. Kies Bewerken / Nieuw / DWORD-waarde. Noem deze ForceAccountSelection. Dubbelklik erop en typ 1 in het vak Waardegegevens. Klik op OK en kies Bestand / Afsluiten.


Wat hierna nog overblijft is de mail die ik verstuur na het aanklikken van een emailadres in een bestand en/of een "mailto". Dan wordt nog steeds de "standaard" account gekoppeld. Is er iemand die mij d.m.v. een aanpassing of een macro verder helpt? Alvast bedankt
 
Ik gebruik er in Outlook het bijgevoegde formulier en code voor.
Probeer eens of dit je probleem oplost.
 

Bijlagen

  • FRMaccount.zip
    1,6 KB · Weergaven: 28
Hallo Edmoor, Zoals je de vorige keer wel gemerkt zult hebben, ben ik leek op dit gebied. Kun jij mij stap voor stap uitleggen wat ik met het zip bestandje moet doen?
 
Als je die uitpakt heb je twee bestandjes.
Deze kun je importeren in je Outlook VBA project.
De juiste functie wordt dan geactiveerd wanneer je in een mail op verzenden klikt.
Je krijgt dan een schermpje waarin je kunt kiezen welk account je als afzender wilt meegeven.

Doe het volgende:
Pak het zip bestand uit.
Je hebt dan 2 bestandjes, frmAccountList.frm en frmAccountList.frx
Start nu Outlook en druk dan op ALT-F11 om in de VBA editor te komen.
Klik aan de linkerkant met de rechtermuis knop op Formulieren.
Klik in het keuzemenu dat dan verschijnt op Bestand importeren.
Zoek het frmAccountList.frm bestand op en importeer deze.
Herstart Outlook en geef eventueel op dat je de wijzigingen wilt bewaren.

Als je nu een nieuwe mail maakt en op Verzenden klikt zou je een keuzelijstje moeten zien.
Selecteer hier het gewenste account en klik op Versend.
Ja, daar zit een tikfoutje in ;)
 
Laatst bewerkt:
Ik heb het geprobeerd, maar zonder succes. Hoe zie ik of het importeren goed gegaan is?
 
aanvulling: Er kwam een foutmelding met verwijzing naar logbestand. Hier stond: Regel 8: eigenschap OleObjectBlob in frmAccountList bevat een ongeldige bestandsverwijzing. Vervolgens ook de opmerking "onvoldoende geheugen".
 
Geen idee waarom hij met die fout komt. Ik heb die functie gemaakt in Office 2007 en heb geen 2010 voorhanden om het te testen.
Klik in de VBA editor eens op Extra en kies daar Verwijzingen en kijk dan of de volgende verwijzing aangevinkt staat:
Microsoft Forms 20. Object Library

De eerste 10 regels van dat frmAccountList.frm bestandje zouden als volgt moeten zijn, kijk eens of dat klopt:

Code:
VERSION 5.00
Begin {C62A69F0-16DC-11CE-9E98-00AA00574A4F} frmAccountList 
   Caption         =   "UserForm1"
   ClientHeight    =   3045
   ClientLeft      =   45
   ClientTop       =   375
   ClientWidth     =   4605
   OleObjectBlob   =   "frmAccountList.frx":0000
   StartUpPosition =   1  'CenterOwner
End
 
Laatst bewerkt:
Ik heb eerder het idee dat het "formulier" niet op de goede plaats staat. Als ik VBA open zie ik bovenaan Project1 (VbaProject.OTM) staan, met daaronder Microsoft Outlook objecten (>This Outlooksession) en formulieren(>Userform1). Klopt dat?
 
Als je die Userform1 niet gebruikt kun je deze verwijderen.
Het is duidelijk dat het importeren niet goed is gegaan.
Kijk daarom de punten even na die ik aangaf.
Dat bestandje frmAccountList.frm kun je met Kladblok openen. (Niets in wijzigen)
frmAccountList.frx moet ook in diezelfde map staan.
 
Laatst bewerkt:
Opnieuw geprobeerd, zonder succes. De programmeercode bij Formulieren>firmAccountList is nu:

Private Sub butCancel_Click()
frmAccountList.Hide
End Sub

Function changeAccount()
Dim item As mailitem
Set item = Application.ActiveInspector.CurrentItem
' Change Mail Account
item.SendUsingAccount = Application.Session.Accounts(lstMailAccounts.Value)
' Enable Sending
ThisOutlookSession.blnSend = True
frmAccountList.Hide
End Function

Private Sub butSend_Click()
Call changeAccount
End Sub

Private Sub Label2_Click()

End Sub

Private Sub lstMailAccounts_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
If KeyAscii = 13 Then
' On Enter Key Press
Call changeAccount
End If
End Sub

Private Sub UserForm_Initialize()
Dim item As mailitem
Set item = Application.ActiveInspector.CurrentItem
Dim oAccount As Outlook.Account
For Each oAccount In Application.Session.Accounts
If oAccount.AccountType = olPop3 Then
lstMailAccounts.AddItem (oAccount)
If oAccount = item.SendUsingAccount Then
lstMailAccounts.Value = oAccount
End If
End If
Next
End Sub
 
Wat bedoel je met: zonder succes?
 
Dat ik bij het aanklikken van een emailadres of mailto geen accountkeuze krijg.
 
Bij het aanklikken van een email adres of mailto wordt wel Outlook geopend?
 
Waar zou ik de eerste acht regels, zoals je in #7 schreef terug moeten vinden?
 
Ok, vreemd, maar was te proberen.
Bij mij werkt het prima.
 
Waar zou ik de eerste acht regels, zoals je in #7 schreef terug moeten vinden?

In het .frm bestandje.
Dat zie je niet meer als je het formulier frmAccountList al hebt.
 
Ik denk niet dat we er zo uit gaan komen.
Als je wilt zou ik via Teamviewer zelf wel even kunnen kijken of ik kan vinden waarom het bij jou niet werkt.
Het verschil is dat jij werkt met Office 2010 en ik het heb draaien in Office 2007 en daar werkt het prima.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan