niet aangekruiste regels uit tabel verwijderen

Status
Niet open voor verdere reacties.

robbosma

Nieuwe gebruiker
Lid geworden
11 feb 2010
Berichten
4
Hallo,

Ik wil een ingevulde vragenlijst in WORD 2016 kritisch maken. dwz alle niet-aangekruiste tabelregels verwijderen. Dit lukt me in zoverre dat ik maar 1 regel tegelijk er uit haal. Ik wil dit tig keer kunnen herhalen tot ik de alleen de [x] aangekruiste regels over hou.

Ik ben zover gekomen:

Sub fmlkritischmaken()
'
' fmlkritischmaken Macro
'For i=1 to 500
Selection.Find.ClearFormatting
With Selection.Find
.Text = "[ ]"
.Replacement.Text = ""
.Forward = True
.Wrap = wdFindAsk
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute
Selection.Rows.Delete

End Sub

Volgens mij moet ik nog iets tussen Selection.Rows.Delete en End Sub zetten. Maar wat. Van alles geprobeerd, uit voorbeeld maar het lukt me nog niet.
 
Plaats een documentje dat kijkt een stuk makkelijker. En zet je code in CODE tags, dat zou je na 7 jaar lid van HelpMij toch wel moeten weten :).
 
Hoi Octafish,

Dit is mijn tweede vraag in 12 jaar, moest eerst de inloggegevens opzoeken. Kun je me helpen met die tag? Ik weet niet wat je bedoelt.
Alvast bedankt.

Grt.
Rob

Bijgaand een voorbeeldformulier dat ik met VBA wil bewerken. Bekijk bijlage voorbeeld lijst.docx
 
Niet zo lastig.

Code:
Sub M_snb()
    on error resume nxt
    For Each it In ActiveDocument.Tables
       For j = it.Rows.Count To 1 Step -1
          If InStr(it.Cell(j, 1), "[ ]") Then it.Rows(j).Delete
          If InStr(it.Cell(j, 2), "[ ]") Then it.Rows(j).Delete
       Next
    Next
End Sub
 
Laatst bewerkt:
Helaas, kreeg een foutmelding, deed de eerste regels goed maar liep daarna vast
Knipsel.JPG

Deze kreeg ik in de foutopsporing te zien (rode tekst was gemarkeerd in de foutopsporing)
Sub fmlkritischmaken()
'
' fmlkritischmaken Macro
'Sub M_snb()
For Each it In ActiveDocument.Tables
For j = it.Rows.Count To 1 Step -1
If InStr(it.Cell(j, 1), "[ ]") Or InStr(it.Cell(j, 2), "[ ]") Then it.Rows(j).Delete
Next
Next
End Sub
'
 
Gebruik svp code tags als je VBA-code in je bericht zet.

Gebruik mijn aangepaste suggestie of pas de tabel aan: alleen [ ] en [x] in de eerste kolom van een tabel.

Overigens lijkt mij Excel een handiger hulpmiddel dan Word in dit geval.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan