PHAKU miten toimii?

Herrazxcv

Minulla on taulukko, jossa on 1. alasivulla 10.000 asiakastunnusta sarakkeessa A. Alasivulla 2. on 500 asiakastunnusta sarakkeessa A1.

Nyt pitäisi 1 alasivulle sarakkeeseen B merkata "X" niiden asiakkaiden kohdalle, jotka löytyvät myös alasivulta 2.

Miten tuo tehdään? PHAKU ehkä toimii, mutta en ymmärrä, millainen kaava sen perään laitetaan.

8

843

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • jospalaskisin

      B1=JOS(LASKE.JOS(Taul2!$A:$A; A1)=0;""; "x")
      Kopioi kaava kaikkiin 10000 riviin. Vinkki: Valitse solu B1 ja tuplaklikkaa solun oikeassa alakulmassa olevaa "pallukkaa", kaava kopioituu alaspäin niin kauas kuin A-sarakkeella on tietoja.
      Kaavassa Taul2 tilalle vaihda se nimi joka on työkirjassa annettu sille "alasivu 2" ja muista huutomerkki (!) perään.

      • jospalaskisin

        Vielä tuosta kaavasta. Siihen jäi turhaan nuo "dollarimerkit". Niitä ei tarvita koska tuo A:A tarkistaa aina kaikki A-sarakkeen solut. Jos taas haluat tarkistaa vain nuo 500 riviä niin laita sitten $A$1:$A$500, että tarkistusalue pysyy aina samana kun kaava kopioidaan.


    • Kundepuu

      tommostakin voi käyttää. Tosin pitempi...
      VBA:ta, kun käyttää niin ei jää turhia laskutoimituskaavoja taulkkoon...

      B1=IF(ISERROR(MATCH(A1;Sheet2!$A$1:$A$500;0));"";"X")

      VBA
      taulukon moduuliin...
      Sub Tuplat()
      Dim Solu As Range
      Dim Solu2 As Range
      Dim Tuplat As Range
      Dim vika As Long
      Dim vika2 As Long
      'muuta taulukonnimet sopiviksi
      vika = Worksheets("Sheet1").Range("A65536").End(xlUp).Row
      vika2 = Worksheets("Sheet2").Range("A65536").End(xlUp).Row
      On Error Resume Next
      Application.ScreenUpdating = False
      'muuta taulukonnimet sopiviksi
      For Each Solu In Worksheets("Sheet1").Range("A1:A" & vika)
      For Each Solu2 In Worksheets("Sheet2").Range("A1:A" & vika2)
      If Solu.Value = Solu2.Value Then
      If Tuplat Is Nothing Then
      Set Tuplat = Solu
      Else
      Set Tuplat = Application.Union(Tuplat, Solu)
      End If
      End If
      Next
      Next
      Tuplat.Offset(0, 1) = "X"
      Application.ScreenUpdating = True
      End Sub

    • herrazxcv

      Kiitos ohjeista, mutta mikään noista ei toimi kunnolla. Taulukossa valmiina olevien tunnusten ei vertailu toimi, mutta jos syötän itse testiasiakkaita niin niiden kohdalla tunnistus toimii. Kaikki tietomuodot soluissa ovat samanlaisia. En käsitä ongelmaa. Kopioin kaikki tiedot samaan tauluun. Silti ei toimi. =JOS(LASKE.JOS(C:C;A1)=0;"ei löydy";"")
      A-sarakkeessa on kaikki asiakkaat. C-sarakkeessa osajoukko. Tuo kaava on B-sarakkeessa sinä välissä. Joka ikisessä kohdassa lukee "ei löydy" VAIKKA sarakkeissa onkin samoja asiakkaita. Mutta kun syötän itse uuden asiakkaan molempiin sarakkeisiin, niin funktio toimii ja antaa blankon. Mikä ihme tässä mättää?

      • herrazxcv

        Lisäksi: Funktio ei siis tunne kuin itse syöttämäni tapaukset. Jos syötän uudelleen A-sarakkeessa olevan tunnuksen ihan samanlaisena alkuperäisen päälle, niin tunnistus toimii! Tämä toimii vain sarakkeessa A. Älytöntä.


    • jospalaskisin

      Onko tieto tuotu jostain ulkoisesta ohjelmasta? Niissä täytyy olla joku ylimääräinen tulostumaton merkki. Jos siis kirjoitat uudelleen "päälle" johonkin soluun saman asiakastunnuksen käsin ja nyt kaava löytää sen, niin silloin siinä on varmasti ylimääräisiä tulostumattomia merkkejä.
      Koeta SIIVOA-funktiota, josko se pystyisi "puhdistamaan" ylimääräiset merkit. Funktio ei pysty poistamaan kaikkia ylimääräisiä merkkejä. Käy tuolla katsomassa, lisää ohjeita.
      https://support.office.com/fi-fi/article/Kymmenen-tapaa-tarkistaa-ja-korjata-tiedot-2844b620-677c-47a7-ac3e-c2e157d1db19?ui=fi-FI&rs=fi-FI&ad=FI

      • herrazxcv

        Tuosta sen täytyy johtua. Taulukko on tehty ohjelmallisesti ensin csv-tiedostoksi. Minä muunsin sen tavalliseksi Exceliksi tallentamalla.


      • herrazxcv

        Nyt huomasin, että asiakastunnusten perässä on 1 kpl blankoja. Kun editoin sen pois yhdestä solusta niin vertailu toimii. Mitenkähän saisin sen pois kaikista soluista kerralla?


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

    Luetuimmat keskustelut

    1. Janne Ahonen E R O A A

      Taas 2 lasta jää vaille ehjää perhettä!
      Kotimaiset julkkisjuorut
      147
      2589
    2. En kai koskaan saa sinua

      Koska et usko että riitäisit minulle. Olet aina pitänyt itseäsi liian risana ja heikkona. Katkot korkeutesi, ja poraat k
      Ikävä
      154
      1659
    3. Terveystalon lääkärit ylilaskuttaneet

      Tämän pörriäiset osaavat, laskuttamisen. Terveystalo myöntää asian. https://www.hs.fi/suomi/art-2000011134269.html "K
      Maailman menoa
      133
      1633
    4. Saran ökytyyli käänsi katseita.

      On nyt kyllä Sara kasvoistaan, kuvan perusteella todellakin pyöristynyt ainakin kuvan perusteella.
      Kotimaiset julkkisjuorut
      149
      1358
    5. Nyt on aika laittaa parit selkoon.

      Onko pareja täällä. Laita kirjaimet kuka tykkää kenestäkin ?
      Ikävä
      66
      1338
    6. The Summit Suomi: Maxie avaa hyytävästä tilanteesta kuvauksissa: "Veri roiskui ja tajusi, että..."

      Oletko seurannut The Summit Suomea? Tykkäätkö vai et tai mitä mieltä ylipäätään olet sarjasta? Moni katsoja on kaikonnut
      Tv-sarjat
      13
      1180
    7. Työttömille lusmuille luvassa lisää keppiä

      Hallitus aikoo kiristää velvoitteiden laiminlyönnistä seuraavia työttömyysturvan karensseja ensi vuodesta alkaen. Hall
      Maailman menoa
      282
      1165
    8. Ootko huomannut miten

      pursuat joka puolelta. Sille joka luulee itsestään liikoja 🫵🙋🏻‍♂️
      Ikävä
      156
      976
    9. Miksi ihmeessä?

      Erika Vikman diskattiin, ei osallistu Euroviisuihin – tilalle Gettomasa ja paluun tekevä Cheek
      Ateismi
      22
      924
    10. Tiedän kaiken sinusta ja kaikesta

      Tiedän miten kärsit. Tiedän millanen oikeesti oot. Tiedän miksi valehtelit, tiedän miksi satutit mua. Tiedän mitä tapaht
      Ikävä
      58
      889
    Aihe