Avatar billede vogel Nybegynder
19. maj 2003 - 22:18 Der er 5 kommentarer og
1 løsning

automatisk sletning af rækker

Hej

Jeg har et excel ark med ca. 500 virksomheder. Jeg vil gerne slette de fleste af dem, f.eks dem, hvor ordet "holding" indgår. Er der nogen der ved, hvordan jeg kan gøre det automatisk?
Avatar billede kabbak Professor
19. maj 2003 - 22:44 #1
prøv denne makro den sletter rækken hvori den finder det søgte

Sub Makro1()
    Søg = InputBox("Skriv søgestrengen på hvad der skal slettes", "Sletning af rækker")
      Columns("A:E").Select 'området den søger på ret det selv til
  Selection.Find(What:=Søg, After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False).Activate
    Rows(ActiveCell.Row).Select
  Selection.Delete Shift:=xlUp

End Sub
Avatar billede vogel Nybegynder
19. maj 2003 - 22:52 #2
Finder den alle linier med f.eks ordet "Holding", eller skal jeg køre makroen flere gange til den ikke finder flere?
Avatar billede kabbak Professor
19. maj 2003 - 23:03 #3
On Error GoTo Slut
    Søg = InputBox("Skriv søgestrengen på hvad der skal slettes", "Sletning af rækker")
      Columns("A:E").Select 'området den søger på ret det selv til
  Selection.Find(What:=Søg, After:=ActiveCell, LookIn:=xlFormulas, _
        LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False).Activate
        a = ActiveCell.Row
        b = ActiveCell.Column
    Rows(ActiveCell.Row).Select
  Selection.Delete Shift:=xlUp
  Cells(a, b).Activate
  Do
Cells.FindNext(After:=ActiveCell).Activate
    Rows(ActiveCell.Row).Select
  Selection.Delete Shift:=xlUp
Loop
Slut:
End Sub

den første fandt kun den første

men denne her finder alle, men den kikker på delord
så hvis du søger på "holding" finder den også "abb holding"

hvis den kun skal søge på hele cellen skal du bruge  nedenstående linie

Cells.Find(What:=Søg, After:=ActiveCell, LookIn:=xlValues, LookAt:= _
        xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
        ).Activate
Avatar billede kabbak Professor
19. maj 2003 - 23:04 #4
Selection.Find(What:=Søg, After:=ActiveCell, LookIn:=xlValues, LookAt:= _
        xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
        ).Activate

en rettelse
Avatar billede kabbak Professor
19. maj 2003 - 23:10 #5
skulle der søges på hele ordet eller kun en del af ordet ?.

Men tak for pointz ;o)
Avatar billede vogel Nybegynder
20. maj 2003 - 10:03 #6
Kun på dele af ordet - og 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
Kategori
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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