Jos-lauseen ja hakujen yhdistäminen?

erty

En millään pääse eteenpäin seuraavassa. Toivottavasti joku viisaampi osaisi auttaa...

Minulla on esimerkissäni ensimmäisessä taulussa otsikkosarakkeet ALUE ja KUNNAT. Alueita on 3: x,y,z. Kuhunkin tuotteeseen kuuluu kuntia eri määrä, ja kaikki kunnat ovat omissa sarakkeissaan, ks. alla

ALUE KUNNAT
x a b c
y d e f g h i
z j k l m

Seuraava taulukko on (eri välilehdellä)oleva tieto, ja nyt haluaisin funktiohärpäkkeen, joka tuottaa arvon 1, jos ao. taulussa oleva vastaajan kotikunta sisältyy ensimmäisessä sarakkeessa määriteltyyn alueeseen ja muuten 0.

ALUE KOTIKUNTA (TULOS, johon pyritään)
y e 1
y l 0
x a 1

Olen yrittänyt yhdistää Jos ja Phaku-funktioita, mutta huonolla menestyksellä, kun en tiedä miten Phaun saisi sarakkeen sijaan etsimään matriiseista - tai jotain sinne päin...?

(en näköjään osaa tehdä esimerkeistä kovin fiksuja, mutta toivottavasti selventävät.)

2

444

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • moduuliin...
      ja muuttele taulukoiden nimet sopiviksi

      Option Explicit

      Sub Siirrä()
      Dim Alue As Range
      Dim Kotikunta As Range
      Dim Solu As Range
      Dim haku As Variant
      Dim vika As Integer
      On Error Resume Next
      Application.ScreenUpdating = False
      Worksheets("Sheet2").Activate
      vika = Range("A65536").End(xlUp).Row
      For Each Solu In Range("A2:A" & vika)
      Set Alue = EtsiJaSiirrä(Solu, Range("Sheet1!A:A")).EntireRow
      Set Kotikunta = EtsiJaSiirrä(Solu.Offset(0, 1), Alue)
      If Not Kotikunta Is Nothing Then
      Solu.Offset(0, 2) = 1
      Else
      Solu.Offset(0, 2) = 0
      End If
      Next
      Application.ScreenUpdating = True
      End Sub


      Function EtsiJaSiirrä(Hakuehto As Variant, HakuAlue As Range) As Range
      Dim Solu As Range
      Dim EkaOsoite As String

      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
      Set EtsiJaSiirrä = Solu
      EkaOsoite = Solu.Address
      Do
      Set EtsiJaSiirrä = Union(EtsiJaSiirrä, Solu)
      Set Solu = .FindNext(Solu)
      Loop While Not Solu Is Nothing And Solu.Address EkaOsoite
      End If
      End With
      Worksheets("Sheet2").Activate
      End Function

    • tämä ?

      =SUMPRODUCT((A1=Sheet1!$A$2:$A$4)*(Sheet2!B1=Sheet1!$B$2:$G$4))

      TULOJEN.SUMMA

    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
      5731
    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
      3025
    3. Gallup: kaivattusi syntymävuosi

      Minä vuonna kaipaamasi henkilö on syntynyt?
      Ikävä
      183
      2645
    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
      2331
    5. Missäpäin,,,

      Lapuaa tapettu ihminen viime yönä ? Hurjaa touhua nykymeno täällä...
      Lapua
      27
      2073
    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ä
      13
      2059
    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
      1746
    8. Mitähän ne katseet merkitsee

      Kun et saa sanaa suustasi.
      Ikävä
      146
      1327
    9. Upea peppuisella naisella

      Upea peppuisella naisella on upea peppu.
      Ikävä
      14
      1249
    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
      1153
    Aihe