Hoe kan ik een geopende applicatie activeren??

Status
Niet open voor verdere reacties.

HansFRAP

Gebruiker
Lid geworden
12 jul 2011
Berichten
209
Ik zou graag met VBA een aantal Excel ranges in een Outlook mail bericht als bitmap willen plaatsen.
(Als ik alle ranges in éénkeer wil plakken wordt mijn plaatje te klein. Vandaar dat ik elke range als apart plaatje wil plakken)

In Outlook heb ik reeds een mail bericht met onderwerp: Voorbeeld aangemaakt. Het bericht is dus geopend.
In 'Windows Taakbeheer' wordt dit op tabblad Toepassingen, in kolom Taak netjes getoond als: Voorbeeld - Bericht (HTML)


Nu de punten waar ik niet uit kom en dus graag info over wil hebben.

1e punt: Hoe kan ik tussen Excel - Map1.xls en betreffende Outlook-Voorbeeld- Bericht switchen??
Ik heb het idee om het Taakvenster uit te lezen zodat ik weet wat ik moet activeren. Weet alleen niet hoe dit te realiseren.
Misschien is hier een handigere oplossing voor.

2e punt: Selecteren van de Excel ranges is geen probleem.
Om het geselecteerde nu als bitmap in Outlook plakken wil ik gebruikmaken van sendkeys. Is natuurlijk niet ideaal.
Misschien is hier een betere oplossing voor.

Als het mogelijk is graag wat voorbeeld code.
(Gaat om Excel en Outlook 2010)
 
Creëer in Excel VBA een Outlook object. Je kunt de hele mail dan aanmaken vanuit Excel VBA zelf en hoef je niet tussen applicaties te wisselen. Meer informatie hierover kun je op de volgende website lezen:
http://www.rondebruin.nl/win/s1/outlook/mail.htm
 
Ed, dank voor snelle reactie.
Met deze oplossing wordt de mail in éénkeer opgebouwd om te versturen. (Ron zijn websites zijn mij bekend).
Mail krijgt nu alleen een plaat die te klein in outlook wordt weergegeven, of krijgt een bijlage.

Vandaar mijn vraag: hoe kan ik mijn mail opbouwen met losse plaatjes en dit te doen door gebied uit Excel te kopieren, Outlook activeren en daar plakken, vervolgens terug naar Excel gebied ophalen en vervolgens in Outlook plakken. Hiervoor moet ik switchen tussen de applicaties.
(Plaatjes zijn dan ook op telefoon-mail direct zichtbaar!)
 
Je kunt, zoals ik al zei gewoon ik Excel blijven.
Je kunt het gecopieerde gedeelte opslaan als plaatje en het dan als volgt aan de mail body toevoegen:
Code:
EmailItem.HTMLBody = "<html><p>Dit is het plaatje.</p>" & _ 
"<img src=C:\Users\HansFRAP\Plaatjes\plaatje.jpg' height=480 width=360>"

Het opslaan van de klembord informatie als plaatje staat hier uitgelegd:
http://www.vbaexpress.com/forum/showthread.php?25275-Saving-Clipboard-data-as-picture

Edit:

Ik heb er nog even wat mee gespeeld en je kunt ook de toetscombinatie CTRL_V gebruiken om de inhoud van de kopie buffer in de boddy van de mail te zetten:

Code:
Sub tst()
    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(0)

    With OutMail
        .to = "test@prov.nl"
        .CC = ""
        .BCC = ""
        .Subject = "Onderwerp"
        .Body = "Hoi!"
        .display
    End With
    SendKeys "^v"

End Sub
 
Laatst bewerkt:
Ik heb inmiddels een script dat voldoende werkbaar is.
Komt neer op verwerking binnen Excel, met als laatste actie automatisch opstellen mailbericht inclusief range van werkblad als body.
Kortom: ik kan verder.

Heb overig meerdere vragen gevonden om code waarmee je Taakbeheer kunt uitlezen en vervolgens gevonden applicatie kunt activeren.
Vragen zijn oud, trek daarbij de conclusie dat dit nog steeds lastig is om te realiseren.
Vraag blijft dus staan: Hoe kan je Taakbeheer met VBA uitlezen en vervolgens onderdelen activeren??
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan