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.)
Jos-lauseen ja hakujen yhdistäminen?
2
431
Vastaukset
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
Mikä on kaivattusi etunimi?
Otsikossa siis on kysymys eriteltynä. Vain oikeat vastaukset hyväksytään.1482845En kestä katsoa
Sitä miten sinusta on muut kiinnostuneita. Olen kateellinen. Siksi pitäisi lähteä pois941569- 1401474
Peräti 95 % persujen kannattajista rasisteja
Kertoo EVA:n teettämä kysely. Pakollista yhdenvertaisuuskoulutusta tarvitsee siis paljon laajempi joukko kuin pelkästää3611360Kun viimeksi kohtasitte/näitte
Mitä olitte tekemässä? Millainen ympäristö oli? Löydetään toisemme...1171314Olet kyllä vaarallisen himokas
Luova, kaunis, määrätietoinen, pervo, mielenkiintoinen, kovanaama, naisellinen ja erikoinen.991165Anna vielä vähän vihreää valoa
Teen sitten siirtoni, nainen. Tiedän, että olet jo varovaisesti yrittänyt lähestyä, mutta siitä on jo aikaa. Jos tunnet15881On minulla suunitelma
Siitä ei vain tiedä kukaan muu kuin tällä hetkellä minä. Suunnitelma ja varasuunnitelma. Sinun takiasi nainen. Vain s47840Palstan ylivoimaisesti suosituin keskustelunaihe
Palstan suosituin keskustelunaihe näyttää olevan homoseksuaalisuus. Otsikoiden perusteella voisi kuvitella olevansa Seks254787- 55754