Avatar billede ransborg Juniormester
20. september 2000 - 13:24 Der er 7 kommentarer og
1 løsning

Slette alle rækker, som indeholder tekst

Jeg vil gerne vide, om det er muligt at lave en macro, så den sletter alle de rækker, hvor f.eks. den markerede kolonne har tekst indhold.

Jeg har følgende macro til at slette rækker med 0 (nul):

Sub deleterow()
Dim xRow As Integer
Dim yCol As String
Dim point As String
Dim vValue As Integer

Set r = Selection.Columns(1)

    For i = r.Rows.Count To 1 Step -1
        If r.Cells(i).Value = 0 Then
            r.Cells(i).EntireRow.Delete
        End If
    Next i
   
End Sub

Hvordan laver jeg den om, så den kan klare ovenstående opgave?

MVH
Claus
Avatar billede gonzoo Nybegynder
20. september 2000 - 15:47 #1
denne linie rettes If r.Cells(i).Value = 0 Then
  til denne        If r.Cells(i).Value = Txt
  prøv det                   
Avatar billede ransborg Juniormester
20. september 2000 - 16:06 #2
Løsning sørger for, at alt andet end text linier slettes.
Avatar billede ransborg Juniormester
20. september 2000 - 16:14 #3
Jeg skulle jo netop sørge for at alle felter med tekst blev slettet og IKKE værdierne.

På forhånd tak

MVH
Claus
Avatar billede nerøs Nybegynder
20. september 2000 - 16:43 #4
Prøv dette:
Sub deleterow()
Dim xRow As Integer
Dim yCol As String
Dim point As String
Dim vValue As Integer
Dim streng As String
\' Sletningen er casesensitive
streng = InputBox(\"Indtast Søgestreng (Wildcards: *,?)\")
Set r = Selection.Columns(1)

    For i = r.Rows.Count To 1 Step -1
        If r.Cells(i).Text Like streng Then
            r.Cells(i).EntireRow.Delete
        End If
    Next i
   
End Sub

VH Nerøs
Avatar billede nerøs Nybegynder
20. september 2000 - 22:52 #5
Du bør i øvrigt Slette følgende ubrugte variable:
Dim xRow As Integer
Dim yCol As String
Dim point As String
Dim vValue As Integer

og indsætte:

dim r as range


Avatar billede ransborg Juniormester
21. september 2000 - 09:52 #6
Nerø,

Jeg kan desværre ikke få din macro til at virke, hvad skal jeg skrive som søgestreng for at den sletter al tekst?

MVH
Claus
Avatar billede nerøs Nybegynder
21. september 2000 - 16:10 #7
Du kan bruge * til at vælge hvilken som helst
indhold, men den tager også nummeriske værdier med.

Hvis du vil undgå dette kan du ændre if delen til:

If r.Cells(i).Text Like streng And Not (IsNumeric(r.Cells(i).Text)) Then

Du kan nøjes med:

if Not (IsNumeric(r.Cells(i).Text)) then...
hvis du ukritisk vil slette alle tekstrækker
Avatar billede ransborg Juniormester
22. september 2000 - 12:09 #8
Jeg brugte den sidstnævnte løsning, og den virker glimrende.

Tak for hjælpen, nerøs

MVH
Claus
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
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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