Hallo iedereen,
Ik ben bezig met het maken van bladwijzers voor Word, via VBA. Met onderstaande scipt krijg ik een foutmelding op de regel "Set oRange = .Bookmarks(sBm).Range", zie de titel van dit bericht.
Ik heb al zoveel geprobeerd, maar zie waarschijnlijk iets over het hoofd. Wie kan mij helpen?
'De OK knop, wat gebeurd er als je hierop klikt.
'Hiermee worden de ongebruikte bookmarks verwijderd, en bookmarks in hoofdletters geconverteerd.
'Bij bookmarks moeten altijd deze gegevens aanwezig zijn. Deze controleert de bladwijzers, en voegt ze toe.
Ik ben bezig met het maken van bladwijzers voor Word, via VBA. Met onderstaande scipt krijg ik een foutmelding op de regel "Set oRange = .Bookmarks(sBm).Range", zie de titel van dit bericht.
Ik heb al zoveel geprobeerd, maar zie waarschijnlijk iets over het hoofd. Wie kan mij helpen?
'De OK knop, wat gebeurd er als je hierop klikt.
Code:
Private Sub OK_Click()
Me.Hide
'Hier word de opdracht gegeven de ingevulde data te vermelden in het Word-Document op de daarvoor aangewezen bladwijzer punten.
RangeMyBookmark "bmAuteur", Me.txtauteur.Text
ActiveDocument.Fields.Update
'Hiermee worden de ongebruikte bookmarks verwijderd, en bookmarks in hoofdletters geconverteerd.
Code:
Dim BM As Bookmark
Dim BMRange As Range
For Each BM In ActiveDocument.Bookmarks
If BM.Empty = True Then
Set BMRange = ActiveDocument.Bookmarks(BM).Range
BMRange.Delete
Else
BM.Range.Case = wdUpperCase
End If
Next
'Bericht weergeven
MsgBox "Alle gegevens zijn succesvol opgenomen en zijn ingevuld.", vbInformation + vbOKOnly, "Succesvol"
End Sub
Code:
Private Sub Userform_Initialize()
'Meerkeuze lijsten, met daarbij de gegevens opties achter .AddItem "".
'Voorblad
With Me.cbostatus
.AddItem "Concept"
.AddItem "Definitief"
End With
With Me.cbotypedocument
.AddItem "Handleiding"
.AddItem "Technische instructie"
.AddItem "Adviesrapport"
End With
End Sub
Code:
Private Sub RangeMyBookmark(sBm As String, sCtl As String)
Dim oRange As Word.Range
With ActiveDocument
Set oRange = .Bookmarks(sBm).Range
oRange.Text = sCtl
.Bookmarks.Add sBm, oRange
Set oRange = Nothing
End With
End Sub
Laatst bewerkt door een moderator: