Avatar billede heick Nybegynder
24. august 2001 - 10:57 Der er 32 kommentarer og
1 løsning

Søg/erstat

Kan det lade sig gøre at søge på en endelse i Excell?
f.eks alle ord der ender på s?
Avatar billede NanoQ Nybegynder
24. august 2001 - 11:01 #1
Jeps...

i søgningen skriver du *s og afmærker \"Find entire cells only\"

NanoQ
Avatar billede heick Nybegynder
24. august 2001 - 11:10 #2
Det har jeg prøvet, desværre virker det ikke - hvad gør jeg galt??
Avatar billede nordclc Nybegynder
24. august 2001 - 11:10 #3
Nej, ikke en endelse. Så skal du nok gøre det gennem script editoren!

//Claus
Avatar billede NanoQ Nybegynder
24. august 2001 - 11:11 #4
hmmm... det virker her..
Avatar billede heick Nybegynder
24. august 2001 - 11:13 #5
HVORDAN GØR JEG DET?????
Avatar billede nordclc Nybegynder
24. august 2001 - 11:17 #6
Godt spørgsmål ;o) Jeg aner det ikke - beklager.
Avatar billede heick Nybegynder
24. august 2001 - 11:21 #7
Kan det virkelig passe, at det ikke kan lade sig gøre i Excell. Er der andre, der har nogle forslag?

Jeg venter spændt..........
Avatar billede heick Nybegynder
24. august 2001 - 11:31 #8
Kan man evt. bruge hvis funktion eller en anden
funktion - jeg kan ikke få det til at virke!!!!!!!!
24. august 2001 - 11:41 #9
Vi kan lave en makro, som løber alle cellerne igennem, og check om S er det sidste bogstav i cellen, og lave det du ønsker.

Du kan i en anden kolonne lave formlen
=HVIS(HØJRE(A1;1)=\"s\";\"JA\";\"NEJ\")
Avatar billede nordclc Nybegynder
24. august 2001 - 11:42 #10
Åben xls dokumentet i Access. Lad Access oprette tabellen, og lav derefter en forespørgsel v.hj.a. guiden og rediger den. I kriterier skrive du:

Like \"*n\"

Kør forespørgslen, og vupti, så har du svaret.

//Claus
Avatar billede hsgroup Nybegynder
24. august 2001 - 11:47 #11
Søg og erstat funktionen kan søge endelser for eksempel på xy.
sådan: skriv i søgefeltet \"*xy\" afkryds \"Søg kun på hele celle\" og evt. \"Forskel på store og små bogstaver\".
Men er det faktisk det du vil? Jeg fornemmer måske at du har defineret spørgsmålet forkert.
Avatar billede bak Seniormester
24. august 2001 - 11:55 #12
En mulighed er at opsætte et autofilter hvis der skal søges i kolonner. Der har man hvis man vælger \"Custom\" mulighed for at filtrere på endelser.
Avatar billede heick Nybegynder
24. august 2001 - 11:59 #13
JEG ER GODT KLAR OVER AT MAN KAN BRUGE ACCESS, MEN DET VAR FOR AT UNDGÅ, AT SKULLE ÅBNE DEN SAMME FIL I FLERE PROGRAMMER.
HVIS FUNTIONEN FUNGERER HELLER IKKE.........
HVORDAN OPSÆTTER MAN ET AUTOFILTER?
Avatar billede bak Seniormester
24. august 2001 - 13:04 #14
Autofilter:
Marker området du vil søge i.
Imenuen vælges [data] / [Filter] / [autofilter]
Klik på en af de knapper der nu er kommet frem.
vælg \"custom..\"
I den dialogbox der nu kommer vælges \"ends with\" og derefter skrives S i boxen ved siden af.
Jeg har kun en engelsk excel her og ved ikke om det hedder helt det samme i den danske version
Avatar billede ransborg Juniormester
24. august 2001 - 13:26 #15
flemmingdahl\'s løsning virker ganske glimrende - du vil her få en kolonne, hvor Ja angiver, at den ender på S - og nej, hvis den ikke gør.

Herefter kan du så sortere på den nye kolonne og slette dine \"nej\" rækker

MVH
Claus
Avatar billede janvogt Praktikant
24. august 2001 - 14:55 #16
>>> ransborg

Der er vel ingen grund til både at lave en formel-kolonne og så derefter søge/sortere på kolonnen, når man, som bak beskriver det, kan klare det hele i en operation (ved hjælp af autofilter).
Avatar billede ransborg Juniormester
24. august 2001 - 15:30 #17
Jan,
det kan jeg kun give dig ret i. det er dog en lidt smagssag, hvordan man laver det, og hvordan man arbejder i excel. Hvis det var mig, ville jeg nok benytte mig af flemmingdahl\'s løsning, derefter ville jeg marker kolonnen, og kører følgende macro på den:

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 = \"Ja\" Then
            r.Cells(i).EntireRow.Delete
        End If
    Next i
   
End Sub

Jeg benytter meget den ovennævnte macro, det er især fordi jeg importer en del data fra div. programmer, og der er det hensigtigsmæssigt at fjerne tomme importrækker og etc.
Avatar billede ransborg Juniormester
24. august 2001 - 15:31 #18
der skulle selvfølgelig stå \"nej\" i macroen - da det er nej rækkerne, som skal slettes
Avatar billede mgk2 Nybegynder
24. august 2001 - 15:32 #19
Det kan det godt, du skal bare gøre som jeg gør
Avatar billede jander Nybegynder
24. august 2001 - 16:25 #20
okay?????
24. august 2001 - 16:30 #21
ransborg>> spring mit formel forslag over, og kør makro\'en direkte f.eks.

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


Set r = Selection.Columns(0)

    For i = r.Rows.Count To 1 Step -1
        If right(r.Cells(i),1) = \"s\" Then
            r.Cells(i).EntireRow.Delete
        End If
    Next i
   
End Sub
Avatar billede janvogt Praktikant
24. august 2001 - 23:07 #22
Udfra opgaveformuleringen mener jeg stadig at autofilter er det bedste alternativ.

F.eks. konkluderes der nu, at alle fundne rækker som ender med \"s\" skal slettes! Det skriver heick vel ikke noget om?

Desuden forudsættes, at \"s\"-endelsen altid står sidst i cellen. Det skriver heick heller ikke noget om. Hvad nu hvis en celle indeholder 2 ord som f.eks. \"Lars Høgh\"? Skal den udtages? Heick skriver jo \"alle ord\"!



Avatar billede heick Nybegynder
27. august 2001 - 08:55 #23
Det er alt sammen meget godt - hvis altså det bare ville virke!!!!!!!!!. Jeg kan hverken få hvis funktionen eller autofilter til kun at tage endelsen s. Hvad gør jeg galt.Den vælger simpelthen alle linier.
Har prøvet makroen, da den viller passe perfekt til min opgave, men den vil ikke acceptere Set r = Seletion.Columns(0). Det er første gang jeg arbejder med en makro (udover at indspille en)

Jeg håber I kan hjælpe
Avatar billede heick Nybegynder
27. august 2001 - 09:01 #24
Det skal lige siges, at jeg skal have slettet alle rækker hvor koden ender på s. Det drejer sig om ca 10.000 koder, så det ville være rart ikke at skulle gennemgå den enkeltvis
27. august 2001 - 09:03 #25
heick>>  = Seletion.Columns(0) er vist min fejl - prøv med 1
Avatar billede janvogt Praktikant
27. august 2001 - 09:03 #26
Vedr. autofilter:
1. Stil dig et sted i din liste
2. Tryk i menuen DATA->FILTER->AUTOFILTER
3. Derved kommer der en lille pil i den øverste celle
4. Tryk på den og der kommer en rullemenu
5. Her vælges der \"Bruger\"
6. I dialogboksen, der nu kommer frem vælges \"Ender med\" og i boksen til højre \"s\"
7. Tryk \"OK\" og du har en liste med kun s-endelser.
Avatar billede janvogt Praktikant
27. august 2001 - 09:08 #27
Dem kan du slette ved at markere området trykke F5 og vælge \"Kun synlige\". Derved er kun s-rækkerne markeret og du kan bare trykke på DELETE-tasten.
Om der er 10 eller 10.000 rækker er i præncippet ligegyldigt.

Avatar billede heick Nybegynder
27. august 2001 - 09:20 #28
KUNNE JEG BARE FÅ DET TIL AT VIRKE, DEN VÆLGER ALLE KODER !!!!!, SÅ LISTEN KAN JEG HELLER IKKE FÅ FREM, DET LYDER ELLERS TIL DET BURDE VÆRE SÅ NEMT
Avatar billede janvogt Praktikant
27. august 2001 - 09:22 #29
Det ER nemt!

Vælger du \"Ender med \'s\'\" i dialogboksen?
Avatar billede janvogt Praktikant
27. august 2001 - 09:24 #30
Hvis du har en mail-adresse, alternativt send en mail til jan_vogt_hansen@hotmail.com så kan jeg sende dig et uddybende eksempel med forklaringer så der ikke er noget at tage fejl af.
Avatar billede janvogt Praktikant
27. august 2001 - 09:32 #31
Hvis du vil bruge en makro kan du bruge denne her:
(Markér først området og kør så makroen)

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


Set r = Selection.Rows()

    For i = r.Rows.Count To 1 Step -1
        If Right(r.Cells(i), 1) = \"s\" Then
            r.Cells(i).EntireRow.Delete
        End If
    Next i
   
End Sub
Avatar billede janvogt Praktikant
27. august 2001 - 09:36 #32
Og dimensioneringen af variablerne er vist heller ikke meget bevendt, så du kan nøjes med:

Sub deleterow()

Set r = Selection.Rows()

    For i = r.Rows.Count To 1 Step -1
        If Right(r.Cells(i), 1) = \"s\" Then
            r.Cells(i).EntireRow.Delete
        End If
    Next i
   
End Sub
Avatar billede janvogt Praktikant
27. august 2001 - 10:14 #33
Sendt \"manual\" ....
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