find funktio

not found

Heips,

Voisiko joku selittää tuon FIND funktion toiminnan excelissä (tyhmälle ei mene kaaliin vaikka helppiä käyttää). Miten se toimii tai paremminkin minkä arvon se palauttaa? Eli tarkoituksena olisi saada etsittyä tietty teksti tietyltä alueelta (nyt ei kelpaa ctrl f), tämä teksti voi esiintyä useammassakin solussa. Miten saisi tehtyä sellaisen kaavan/kaavat, joka kertoisi missä soluissa kyseinen teksti on?

5

1475

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • ...oooOOOooo...

      Se ei etsi tiettyä tekstiä tietyltä alueelta.
      Vaan se etsii tietyn merkkijonon (tekstin) tietystä tekstistä.

      Elikkä näin
      A1 solussa teksti
      aaabbbcccdddeeefff

      C1 solussa etsittävä merkkijono
      ccc

      D1 solussa kaava
      =FIND(C1;A1;1)

      Antaa tulokseksi 7 elikkä merkkijono löytyy 7. merkistä eteenpäin.

    • excel-asiantuntija

      Kuvauksesi perusteella FIND-funktio ei selvästikään vastaa tarvettasi. Sillä voi hakea tekstiä ainoastaan yhden merkkijonon (esimerkiksi yhden solun) sisältä, kun yllä jo kävi ilmi.

      MATCH-funktio sen sijaan saattaa auttaa jossain määrin. MATCH osaa hakea, missä kohtaa listaa haettava arvo on.

      Esimerkki. Soluissa A1-A7 on seuraavat nimet:
      Vilhelmi
      Jari
      Mikko
      Harri
      Ville
      Jalmari
      Elmeri

      Funktio MATCH("Harri";A1:A7;0) antaa tulokseksi 4, koska "Harri" on listan 4. arvo.

      MATCH ei osaa hakea osamerkkijonoja, vaan ainoastaan koko merkkijonoa. MATCH ei osaa myöskään hakea monimutkaisemmasta alueesta kuin yhdestä sarakkeesta.

      Jos tarvitset monimutkaisempaa hakua, joudut laatimaan VBA-makron.

      --
      Asiantuntevaa apua Excelin kiemuroihin - LGM Oy
      http://www.lgm.fi/

      • moduuliin...
        muuta hakusolu=K1 ja hakualue= A1:D10 sopiviksi

        Function EtsiiKaikkiAlueelta(Hakuehto As Variant, HakuAlue As Range) As String
        Dim solu As Range
        Dim EkaOsoite As String
        Worksheets("Sheet1").Activate
        With HakuAlue
        Set solu = .Find( _
        what:=Hakuehto, _
        LookIn:=xlValues, _
        LookAt:=xlWhole, _
        SearchOrder:=xlByRows, _
        SearchDirection:=xlNext, _
        MatchCase:=False, _
        SearchFormat:=False)
        If Not solu Is Nothing Then
        EkaOsoite = solu.Address
        Do
        EtsiiKaikkiAlueelta = EtsiiKaikkiAlueelta & ", " & solu.Address
        Set solu = .FindNext(solu)
        Loop While Not solu Is Nothing And solu.Address EkaOsoite
        End If
        End With
        EtsiiKaikkiAlueelta = Right(EtsiiKaikkiAlueelta, Len(EtsiiKaikkiAlueelta) - 1)
        End Function

        Sub Etsi()
        Dim solut As String
        On Error GoTo virhe
        solut = EtsiiKaikkiAlueelta(Range("K1"), Range("A1:D10"))
        MsgBox Range("K1") & " löytyi solu(i)sta" & solut
        Exit Sub
        virhe:
        MsgBox "ei löytynyt!"
        End Sub

        Keep EXCELing
        @Kunde


    • ...oooOOOooo...

      Vaihtoehtona olisi myös vlookup ja hlookup käskyt.

      Ne osaavat käydä hakemassa tietoa useammasta solusta, mutta....
      Niilläkin rajoituksena on että sinun pitää tietää tarkalleen se tieto mitä haet.
      Ei riitä vain osa tiedosta.

      Esim: sinä haluat löytää tiedon "kuusi"
      Ja sinulla on jossakin solussa tieto "Joulukuusi"
      Se ei löydä sitä.
      Sinun haussa pitäisi olla "Joulukuusi" kokonaan että haku löytyy.

    • lisärajoitteita...
      ei löydä kuin yhden esiintymän- yleensä ensimmäisen...
      toki kikkailemalla asiaa voi parannella
      VBA:lla toi oli piece of cake, ja löytää kaikki osittaisellakin vastineella, nyt tossa esim. koodissani tosin ei ole osavastinetta, mutta ei siihen tartte kuin vaihtaa
      LookAt:=xlWhole --->LookAt:=xlPart

      Keep EXCELing
      Kunde

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Useita puukotettu Tampereella

      Mikäs homma tämä nyt taas on? "Useaa henkilöä on puukotettu Tampereen keskustassa kauppakeskus Ratinan lähistöllä." ht
      Tampere
      152
      2954
    2. Asiakas iski kaupassa varastelua tehneen kanveesiin.

      https://www.iltalehti.fi/kotimaa/a/33a85463-e4d5-45ed-8014-db51fe8079ec Oikein. Näin sitä pitää. Kyllä kaupoissa valtava
      Maailman menoa
      368
      2050
    3. Leipivaaran päällä on kuoleman hiljaista.

      Suru vai suuri helpotus...
      Puolanka
      41
      1805
    4. Kuka rääkkää eläimiä Puolangalla?

      Poliisi ampui toistakymmentä nälkiintynyttä eläintä Puolangalla Tilalta oli ollut karkuteillä lähes viisikymmentä nälkii
      Puolanka
      37
      1772
    5. Meneeköhän sulla

      oikeasti pinnan alla yhtä huonosti kuin mulla? Tai yhtä huonosti mutta jollain eri tyylillä? Ei olisi pitänyt jättää sua
      Ikävä
      32
      1421
    6. Jos ei tiedä mitä toisesta haluaa

      Älä missään nimessä anna mitään merkkejä kiinnostuksesta. Ole haluamatta mitään. Täytyy ajatella toistakin. Ei kukaan em
      Ikävä
      93
      1221
    7. Määpä tiijän että rakastat

      Minua nimittäin. Samoin hei! Olet mun vastakappaleeni.
      Ikävä
      54
      1173
    8. Muutama kysymys ja huomio hindulaisesta kulttuurista.

      Vedakirjoituksia pidetään historiallisina teksteinä, ei siis "julistuksena" kuten esimerkiksi Raamattua, vaan kuten koul
      Hindulaisuus
      328
      975
    9. Jumala puhui minulle

      Hän kertoi sinusta asioita, joiden takia jaksan, uskon ja luotan. Hän kuvaili sinua minulle ja pakahduin onnesta kuulles
      Ikävä
      110
      948
    10. Annan meille mahdollisuuden

      Olen avoimin mielin ja katson miten asiat etenevät. Mutta tällä kertaa sun on tehtävä eka siirto.Sen jälkeen olen täysil
      Ikävä
      53
      792
    Aihe