Excel lookup-kysymys

Ari

Voinko tehdä jotenkin näppärästi haun taulukkoon, jossa vaaka- ja pystyrivien otsikot ovat tekstimuotoisia (ja niiden risteyksessä tietysti se haettava arvo).

Onnistuuko? Miten?

-Ari

13

3188

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • mites

      tämmöinen yhdistelmä phaku ja vastine funktioita.Voi olla ettei tämä sovi sinun taulukkoosi mutta voithan soveltaa

      PHAKU(B9;A1:E5;VASTINE(B8;A1:E1;0);0)

      B8 sarakeotsikko
      B9 riviotsikko

      • Ari

        Mitäs noi PHAKU ja VASTINE on englanniksi...?

        -Ari


      • nuo
        Ari kirjoitti:

        Mitäs noi PHAKU ja VASTINE on englanniksi...?

        -Ari

        phaku = vlookup
        vastine = match


    • Kunde

      Valitse hakualue ja valitse Lisää/Nimi/Luo ja avautuvasta valikosta oikeat vaihtoehdot luo nimille. Kun haluat hakea arvoa kirjoitat vain soluun kaavan = sarakeotsikko riviotsikko tai toisten päin =riviotsikko sarakeotsikko :)

      • mites

        on näppärä tapa hoitaa asia, hienoa !


      • paavali

        aivan uusi asia minullekin, mutta käy moneen hakuun


      • Kunde
        paavali kirjoitti:

        aivan uusi asia minullekin, mutta käy moneen hakuun

        Tota leikkaus funktiota kutsutaan Excelin Native Languageksi...
        Ollos hyvä vaan! :)


      • paavali
        Kunde kirjoitti:

        Tota leikkaus funktiota kutsutaan Excelin Native Languageksi...
        Ollos hyvä vaan! :)

        Onnistuuko sama "oikelta vasemmalle"
        esim.Sarakeotsikot: nimi, pituus, paino
        Löytyykö joku konsti etsiä kuka painaa 63kg


      • paavali
        paavali kirjoitti:

        Onnistuuko sama "oikelta vasemmalle"
        esim.Sarakeotsikot: nimi, pituus, paino
        Löytyykö joku konsti etsiä kuka painaa 63kg

        INDEKSI(VASTINE) hakee kyllä, mutta onnistuuko tuolla toisella tavalla.


      • Kunde
        paavali kirjoitti:

        INDEKSI(VASTINE) hakee kyllä, mutta onnistuuko tuolla toisella tavalla.

        Mutta tällä voi hakea taulukosta kanssa mistä sarakkeesta tahansa :)

        Function PHakuVasemmalle(Hakuarvo, ByVal Hakutaulukko As Range, _
        PalArvoSarakeSiirtymä As Integer, _
        Optional HakuarvoSarake As Integer = -257)
        ' Tämä funktio hakee arvoja vasemmalta tai oikealta
        ' Kun määrittelet neljännen arvon voit käyttää mitä tahansa saraketta
        ' Kolmas argumentti on sarakkeiden määrä siirtymänä vasemmanpuoleisesta
        ' sarakkeesta (0 -pohjainen).Esim 1 palauttaa toisen sarakkeen arvon


        ' Varmistetaan, että käytetään vain yhtä aluetta
        If Hakutaulukko.Areas.Count > 1 Then
        MsgBox "Voit hakea vain yhtenäiseltä alueelta"
        Exit Function
        End If

        With Application

        'Jos hakuehtoa toiselle sarakkeele ei ole annettu,
        'niin palautetaan arvo vasemman puoleisesta sarakkeesta
        If HakuarvoSarake = -257 Then
        PHakuVasemmalle = _
        .Index(Hakutaulukko.Offset(0, PalArvoSarakeSiirtymä), _
        .Match(Hakuarvo, Hakutaulukko.Columns(1), 0), 1)

        ' Muuten palautetaan hakuarvoa vastaava arvo
        'syötetystä sarakkeesta -1
        Else
        PHakuVasemmalle = _
        .Index(Hakutaulukko.Offset(0, PalArvoSarakeSiirtymä), _
        .Match(Hakuarvo, Hakutaulukko.Columns(HakuarvoSarake), 0), 1)
        End If

        End With

        End Function


      • Kokeilunhaluinen
        Kunde kirjoitti:

        Mutta tällä voi hakea taulukosta kanssa mistä sarakkeesta tahansa :)

        Function PHakuVasemmalle(Hakuarvo, ByVal Hakutaulukko As Range, _
        PalArvoSarakeSiirtymä As Integer, _
        Optional HakuarvoSarake As Integer = -257)
        ' Tämä funktio hakee arvoja vasemmalta tai oikealta
        ' Kun määrittelet neljännen arvon voit käyttää mitä tahansa saraketta
        ' Kolmas argumentti on sarakkeiden määrä siirtymänä vasemmanpuoleisesta
        ' sarakkeesta (0 -pohjainen).Esim 1 palauttaa toisen sarakkeen arvon


        ' Varmistetaan, että käytetään vain yhtä aluetta
        If Hakutaulukko.Areas.Count > 1 Then
        MsgBox "Voit hakea vain yhtenäiseltä alueelta"
        Exit Function
        End If

        With Application

        'Jos hakuehtoa toiselle sarakkeele ei ole annettu,
        'niin palautetaan arvo vasemman puoleisesta sarakkeesta
        If HakuarvoSarake = -257 Then
        PHakuVasemmalle = _
        .Index(Hakutaulukko.Offset(0, PalArvoSarakeSiirtymä), _
        .Match(Hakuarvo, Hakutaulukko.Columns(1), 0), 1)

        ' Muuten palautetaan hakuarvoa vastaava arvo
        'syötetystä sarakkeesta -1
        Else
        PHakuVasemmalle = _
        .Index(Hakutaulukko.Offset(0, PalArvoSarakeSiirtymä), _
        .Match(Hakuarvo, Hakutaulukko.Columns(HakuarvoSarake), 0), 1)
        End If

        End With

        End Function

        Vääntäisitkö rautalangasta miten tuota käytetään.


      • Kunde
        Kokeilunhaluinen kirjoitti:

        Vääntäisitkö rautalangasta miten tuota käytetään.

        Lisää VBa editorissa moduuli ja kopioi koodi sinne.Tee soluun kaava lisää funktiolla PhakuVasemmalle ja anna argumentit seuraavasti.
        1. Tapaus haetaan arvo mistä sarakkeesta tahansa

        Hakuarvo=Arvo millä haetaan
        Hakutaulukko=Alue mistä haetaan
        PalArvoSarakeSiirtymä=Hakutaulukon sarakkeen numero vasemmalta alkaen ,jonka arvo halutaan palauttaa (hakutaulukon vasemmanpuoleisin sarake=0).
        HakuarvoSarake= sarakkeen numero hakutaulukossa (vasemmanpuoleisin sarake=1)
        jos HakuarvoSaraketta ei määritellä toimii kuten normaali PHAKU, mutta muista muuttaa Hakutaulukko myös vastaamaan normaalia PHAKU taulukkoa elikkä hakuehto on hakualueen vasemmanpuoleisin sarakkeessa...
        tulikohan se nyt selvästi kerrottua?
        esim.
        solussa on kaava
        =PHakuVasemmalle(H1;A1:F13;2;6)
        H1= arvo millä haetaan
        A1:F13= hakualue
        2= sarake mistä arvo palautetaan -vasemmanpuoleisin sarake on 0 jne.
        6= sarake missä haettava arvo on -vasemmanpuoleisin sarake on 1

        2. Tapaus neljättä argumenttiä ei anneta,siis normaali PHAKU tapaus
        Hakuarvo=Arvo millä haetaan
        Hakutaulukko=Alue mistä haetaan, nyt pitää muistaa,että Hakuarvo pitää olla alueen vasemmanpuoleisessa sarakkeessa
        PalArvoSarakeSiirtymä=Hakutaulukon sarakkeen numero vasemmalta alkaen ,jonka arvo halutaan palauttaa (hakutaulukon vasemmanpuoleisin sarake=0).
        HakuarvoSarake= tämä jätetään nyt tyhjäksi!
        esim.
        solussa on kaava
        =PHakuVasemmalle(H3;C1:F13;1)
        H3= arvo millä haetaan
        C1:F13= hakualue
        1= sarake mistä arvo palautetaan -vasemmanpuoleisin sarake on 0 jne.

        Mallitiedosto kertoisi enemmän kuin 1000 sanaa ... mutta tässä foorumissa sitä ei voi liittää mukaan.


      • Kokeilunhaluinen
        Kunde kirjoitti:

        Lisää VBa editorissa moduuli ja kopioi koodi sinne.Tee soluun kaava lisää funktiolla PhakuVasemmalle ja anna argumentit seuraavasti.
        1. Tapaus haetaan arvo mistä sarakkeesta tahansa

        Hakuarvo=Arvo millä haetaan
        Hakutaulukko=Alue mistä haetaan
        PalArvoSarakeSiirtymä=Hakutaulukon sarakkeen numero vasemmalta alkaen ,jonka arvo halutaan palauttaa (hakutaulukon vasemmanpuoleisin sarake=0).
        HakuarvoSarake= sarakkeen numero hakutaulukossa (vasemmanpuoleisin sarake=1)
        jos HakuarvoSaraketta ei määritellä toimii kuten normaali PHAKU, mutta muista muuttaa Hakutaulukko myös vastaamaan normaalia PHAKU taulukkoa elikkä hakuehto on hakualueen vasemmanpuoleisin sarakkeessa...
        tulikohan se nyt selvästi kerrottua?
        esim.
        solussa on kaava
        =PHakuVasemmalle(H1;A1:F13;2;6)
        H1= arvo millä haetaan
        A1:F13= hakualue
        2= sarake mistä arvo palautetaan -vasemmanpuoleisin sarake on 0 jne.
        6= sarake missä haettava arvo on -vasemmanpuoleisin sarake on 1

        2. Tapaus neljättä argumenttiä ei anneta,siis normaali PHAKU tapaus
        Hakuarvo=Arvo millä haetaan
        Hakutaulukko=Alue mistä haetaan, nyt pitää muistaa,että Hakuarvo pitää olla alueen vasemmanpuoleisessa sarakkeessa
        PalArvoSarakeSiirtymä=Hakutaulukon sarakkeen numero vasemmalta alkaen ,jonka arvo halutaan palauttaa (hakutaulukon vasemmanpuoleisin sarake=0).
        HakuarvoSarake= tämä jätetään nyt tyhjäksi!
        esim.
        solussa on kaava
        =PHakuVasemmalle(H3;C1:F13;1)
        H3= arvo millä haetaan
        C1:F13= hakualue
        1= sarake mistä arvo palautetaan -vasemmanpuoleisin sarake on 0 jne.

        Mallitiedosto kertoisi enemmän kuin 1000 sanaa ... mutta tässä foorumissa sitä ei voi liittää mukaan.

        Ohjeet oli niin hyvät, että minäkin sain sen toimimaan pikku haparoinnin jälkeen.


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

    Luetuimmat keskustelut

    1. Ketä ikävöit?

      Tuntomerkkejä jos täällä oikeat kohtaavat❤️
      Ikävä
      96
      2159
    2. Et saa mua ikinä

      Oma vikasi. Naiselta.
      Ikävä
      129
      1398
    3. Ammuskelua taas

      Keskipohjanmaa tietää kertoa että Yläpubin hujakoilla ammuskeltu lauantain vastaisena yönä.
      Kokkola
      23
      1360
    4. Juniorivalmennus Jokereissa..

      Mitä hittoa siellä seurassa oikein tapahtuu?? Tämän kauden U14 ikäluokkaan on mahdutettu kaksi päävalmentajaa. Tälle kau
      Nuorten jääkiekko
      29
      1308
    5. Päivämääriä

      Minä päivämääränä näit kaivattusi viimeksi?
      Ikävä
      68
      1223
    6. Introverttinä osastolla

      Yhdellä lääkäritapaamisella hoitaja valitti lääkärille etten tee mitään muuta kuin makaan ja ulkoilen. Kävin kuitenkin s
      337
      1038
    7. Toivotko, että

      hän tulisi juttelemaan sinulle, vai lähestytkö mieluummin itse?
      Ikävä
      89
      965
    8. Seksikkäin asu mikä päällä olet nähnyt kaivattusi ?

      Seksikkäin asu mikä yllä olet nähnyt kaivattusi ?
      Ikävä
      56
      914
    9. 122
      787
    10. VIELÄKIN NAURATTAA

      Seurustelua haluais. 🤣🤣🤣🤣🤣🤣
      Ikävä
      82
      786
    Aihe