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

3097

    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. Mitä tapahtunut

      Poliiseja monta autoa+panssariauto Porista kpäähän päin tänään klo n.20 kuka hurjistunut ?
      Kankaanpää
      46
      5711
    2. Lakea konkurssiin. Asukkaat menettävät asuntonsa

      Kuntarahoitus on tänään jättänyt konkurssihakemuksen lakean kaikista kiinteistö osakeyhtiöistä. Kassa on tyhjä, kaikki
      Seinäjoki
      55
      2985
    3. Gallup: kaivattusi syntymävuosi

      Minä vuonna kaipaamasi henkilö on syntynyt?
      Ikävä
      183
      2625
    4. Nikkalassa vauhdilla nokka kohti taivasta

      Mitähän Darwin sanoisi näistä 4 suomalaisesta, jotka kävivät Haparandan puolella näyttämässä, kuinka Suomi auto kulkee t
      Tornio ja Haaparanta
      10
      2301
    5. Missäpäin,,,

      Lapuaa tapettu ihminen viime yönä ? Hurjaa touhua nykymeno täällä...
      Lapua
      27
      2063
    6. mahdollista, että olet ollut iltavuorossa

      Ja kotiin päästyäsi tulit palstalle etsimään merkkiä minusta, jos kaipaat yhtään minua niin kuin minä sinua Ei mennyt k
      Ikävä
      12
      2016
    7. törniöläiset kaaharit haaparannassa

      isäpapan autolla kaahatta 270 km/h metsään https://www.lapinkansa.fi/nsd-kaksi-suomalaista-kuoli-kolarissa-haaparannall/
      Tornio ja Haaparanta
      15
      1726
    8. Mitähän ne katseet merkitsee

      Kun et saa sanaa suustasi.
      Ikävä
      145
      1305
    9. Upea peppuisella naisella

      Upea peppuisella naisella on upea peppu.
      Ikävä
      13
      1217
    10. Sitä saa mitä tilaa Perussuomalaiset!

      https://yle.fi/a/74-20160212 SDP:n kannatus se vain nousee ja Keskusta on kolmantena. Kokoomus saanut pienen osan persu
      Maailman menoa
      261
      1133
    Aihe