Opgelost Hoe statement GOTO in vba Outlook gebruiken?

Dit topic is als opgelost gemarkeerd
Status
Niet open voor verdere reacties.

HansFRAP

Gebruiker
Lid geworden
12 jul 2011
Berichten
209
Probleem
Ik wil in een Outlook formulier direct naar een bladwijzer gaan.
ik zou dit mbv functie: Ga Naar - Bladwijzer willen doen.
In Word is dat voor mij:
Code:
    Selection.GoTo What:=wdGoToBookmark, Name:="Factuur"
    Selection.Find.ClearFormatting
    With Selection.Find
        .Text = ""
        .Replacement.Text = ""
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With

Ik kan geen tegenhanger van deze Wordcode: Selection.GoTo What:=wdGoToBookmark voor Outlook vinden.

Vraag
Hoe kan ik de Word VBA-code omzetten in bruikbare Outlook VBA-code?
 
Code:
Goto Label

Label:

Maar ls je goto gebruikt is waarschijnlijk de structuur van je code niet in orde.
Tenzij je het alleen gebruik voor een Exit procedure.

Of bedoel je te gaan naar een positie in de mail body?
 
Laatst bewerkt:
Laat je Outlook code eens zien, liefst ook met het formulier erbij. Zo kunnen we er niet zoveel mee. Sowieso vraag ik me af of Outlook formulieren met bladwijzers werken; ik heb er in ieder geval nog nooit van gehoord. Formulieren werken met tekstvelden etc.
 
De object Browser vindt geen lemma 'bookmark' in de Outlook VBA-bibliotheek.
 
(Het is toch wel frappant dat ik vaak antwoorden van dezelfde mensen krijg )

@Edmoor
Ik heb een autotekst in Outlook formulier. Dit is een tabel en ik wil direct naar kolom met header: Factuur.
Wanneer ik een formulier geopend heb en handmatig de Autotekst neergezet heb dan kan ik met F5 direct naar deze 'bladwijzer'. Werkt gelijk als teksten in Word.
Nu wil ik dat met VBA code doen. In Word-VBA gaat dat met: Selection.GoTo What:=wdGoToBookmark, Name:="Factuur"
In Outlook werkt dat dus niet.

@OctaFish
Ja, zo zie je dat er nog wel wat te leren is. In Outlook kan je met Autoteksten en bladwijzers werken. Tenminste wel handmatig.
helaas nog geen code want daar loop ik nu dus tegenaan.

@SNB
Ik kon dat object idd niet vinden. Dus vandaar de vraag.
Wel vreemd dat je dat dus wel handmatig kan doen.
 
Laatst bewerkt:
@EdM heeft het over GoTo in VBA-code. daar gaat je vraag niet over.

Voldoe aan het verzoek van @Octa en je komt verder.
 
@snb
Wellicht is mijn vraag niet duidelijk genoeg.
In mijn vraag heb ik code opgenomen. Dit is VBA-Word.
In die code staat geen losse GOTO maar: Selection.GoTo What:=wdGoToBookmark, Name:="Factuur"
In de tekst onder de code staat dat mijn routine waar ik op stuk loopt.
Ook al wijzig ik wdGoToBookmark in olGoToBookmark (maar ja dat vind ik natuurlijk ook nergens)

Dus voor de helderheid: Het gaat niet om een losse GOTO maar om: Selection.GoTo What:
Dat statement zou ik dus graag in de Outlook-VBA willen gebruiken.

Zoals je aangeeft: De object Browser vindt geen lemma 'bookmark' in de Outlook VBA-bibliotheek.
zal dit op een andere manier wellicht kunnen.
Ik ga zoeken naar een Find opdracht.
 
Laatst bewerkt:
En zoals snb (en ik ook min of meer) heb aangegeven: zonder code en je formulier kunnen we niks. Ik vermoed dat je het niet over een formulierobject hebt, maar over het bodytekst vak waarin je een mail typt.

Dát tekstvak werkt inderdaad als een ‘Word object’, maar het ís dus géén Word, en dus kun je het niet met Word code benaderen/bewerken. Daarvoor moet je toch echt in Word zelf zijn. Dat Word sneltoetsen (en Autotekst fragmenten) in het Outlook tekstvak werken, wist ik uiteraard wel (niks geleerd dus), net zo goed als dat ik weet dat je de inhoud daarvan niet met Word VBA kan bewerken.

Het enige wat je zou kunnen proberen is om met SendKeys de door jou uitgevoerde handelingen met VBA uit te voeren. Misschien als je de Word bibliotheek toevoegt aan de Outlook omgeving dat je het nog werkend kan krijgen zoals je wilt.
 
Ook in Word zou ik nooit selection.goto gebruiken, maar meteen de gewenste bladwijzer bewerken met

Code:
Activedocument.bookmarks("Factuur").range.text="vermijd 'selection' in VBA"

Lees in je VBA handboek nog eens wat de opdracht GOTO in een VBA procedure doet

Code:
Sub M_snb()
  On error goto XL90

  y=1200\0

  Msgbox  "zie je wel"

XL90:
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan