Avatar billede densortehingst Seniormester
11. september 2018 - 23:21 Der er 1 kommentar og
1 løsning

makro

jeg skal bruge en makro i word 2010 som kan slette en række i en tabel.

jeg har en tabel på xx rækker og ønsker at slette alle de rækker, hvor celle2 er tom.
min kollega har lavet en, som sletter hvis en bestem tekst forekommer, men man kan ikke indtaste "tom celle".

hvad skal jeg rette?

Sub DeleteRowWithSpecifiedText()
    Dim sText As String

    sText = InputBox("Enter text for Row to be deleted")
    Selection.Find.ClearFormatting
    With Selection.Find
        .Text = sText
        .Wrap = wdFindContinue
    End With
    Do While Selection.Find.Execute
        If Selection.Information(wdWithInTable) Then
            Selection.Rows.Delete
        End If
    Loop
End Sub
Avatar billede Lene Fredborg Ekspert
12. september 2018 - 00:59 #1
Du kan ikke blot rette den eksisterende makro. Du kan ikke bruge metoden i den  makro til formålet. Det er nødt til at blive gjort ved at undersøge cellerne i tabellen. En celle, som er tom, indeholder faktisk noget alligevel, nemlig en End of Cell marker (kan ses når formateringsmærker er vist). En sådan er en string med længden 2. Det kan bruges til at tjekke cellerne.

Forudsætningen for, at du kan slette rækker er, at der ikke er lodret flettede celler i tabellen. Makroen, jeg har lavet, forudsætter at markøren er i tabellen.

Sub DeleteRowsWithEmtpyCell2()
    Dim orow As Row
   
    'assume that the selection is in the table to handle
    For Each orow In Selection.Tables(1).Rows
        If orow.Cells.Count >= 2 Then
            If Len(orow.Cells(2).Range.Text) = 2 Then
                orow.Delete
            End If
        End If
    Next orow
   
End Sub
Avatar billede densortehingst Seniormester
12. september 2018 - 23:43 #2
jeg kan ikke gennemskue, hvad makroen gør, men det virker perfekt :)
Tak for hjælpen...
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester