Haku koko työkirjasta ja tietyyn solun arvon tulokseksi

Anonyymi

Minulla on excel, jossa on ainakin 30 välilehteä.
Välilehdillä resursointiin liittyvää tietoa. Ja lisäksi minulla on kokooma, joka summaa kaikista välilehdistä henkilöiden varaukset. Ja sen olen saanut pelittämään tosi hyvin.
Mutta listalla on uusia henkilöitä, jotka ovat vaan yhden kerran jossain välilehdessä.

Saanko mitenkään sellaisen kaavan, että excel hakee tietyn solun tiedon kaikista välilehdistä, ja kun tieto löytyy, niin palauttaa minulle ko. välilehden solun C6-arvon.
Yritin kokeilla HAKU ja ETSI, JOS kaavoja, mutta ei oikein pelitä, tai en siis vaan osaa :)
vastaukseksihan tulisi varmaan arvo tai virhe niiden kohdille, jotka ovat monella välilehdellä ja se on fine, mutta saisin tietää missä kohteilla henkilöt on vaan yhden kerran.

Kiitos avusta jo etukäteen!

nim. niin lähellä mut tosi kaukana

2

1517

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Sub HakeeKaikistaTaulukoista()
      Dim ws As Worksheet
      Dim Löydetty As Range
      Dim Haku As String
      Dim Tupla As Boolean
      Dim kpl As Long
      Dim i As Long
      Dim C6Arvo As Variant
      Dim Nimi As String
      On Error Resume Next
      'haettava tieto ( nyt Sheet1 taulukko, oletetaan aktiiviseksi, kuna makroa suoritetaan, muuta alempana nimi oikeaksi
      Haku = Range("B3")
      kpl = Worksheets.Count
      For i = 1 To kpl
      ' muuta hakusolun taulukon nimi sopivaksi(ettei hae siitä...)
      If Worksheets(i).Name <> "Sheet1" Then
      With Worksheets(i).UsedRange
      Set Löydetty = .Find(What:=Haku, After:=.Cells(1, 1), LookIn:=xlValues, LookAt:=xlWhole)
      If Not Löydetty Is Nothing Then
      If Tupla Then
      C6Arvo = ""
      Nimi = ""
      GoTo loppu
      End If
      Tupla = True
      C6Arvo = Worksheets(i).Range("C6")
      Nimi = Worksheets(i).Name
      End If
      End With
      End If
      Next i
      On Error GoTo 0
      loppu:
      'muuta taulukon nimi ja solut sopiviksi
      Worksheets("Sheet1").Range("C6") = C6Arvo
      Worksheets("Sheet1").Range("D6") = Nimi
      End Sub

      Keep EXCELing
      @Kunde

    • Anonyymi

      Kuulostaa sellaiselta puuhalta, joka tehdään sql:ssä unionilla.

      Taulu1
      --
      ID Arvo
      1 1
      2 2
      3 3

      Taulu2
      --
      ID Arvo
      1 2
      4 4
      5 5

      SELECT Arvo FROM T1 UNION SELECT Arvo FROM T2;
      --
      Arvo
      1
      2
      3
      4
      5

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

    Luetuimmat keskustelut

    1. Miksi et irrota otettasi

      Suhteeni?
      Ikävä
      77
      3095
    2. Koko ajan olet

      Senkin suhteen kiusannut. Halut on ihan mielettömät olleet jo pitkään
      Ikävä
      86
      2989
    3. Muutama syy

      Sille miksi IRL kohtaaminen on hänelle vaikeaa
      Ikävä
      68
      1852
    4. Tykkään susta

      Elämäni loppuun asti. Olet niin suuresti siihen vaikuttanut. Tykkäsit tai et siitä
      Ikävä
      19
      1792
    5. Onko kaikki hyvin, iso huoli sinusta

      Miten jakselet? Onko sattunut jotain ikävää. Naiselta
      Ikävä
      27
      1691
    6. Onko kaivatullasi

      Hyvä vai huono huumorintaju?
      Ikävä
      24
      1677
    7. Estitkö sä minut

      Oikeasti. Haluatko, että jätän sun ajattelemisen? :3
      Ikävä
      21
      1661
    8. Tiedätkö tykkääkö

      Kaivatustasi siinä mielessä joku muukin kuin sinä itse
      Ikävä
      48
      1317
    9. Pettymys! Tähdet, tähdet -kisassa tämä erikoisjakso pois - Pistänyt artistit todella lujille!

      Tähdet, tähdet -kisa on edennyt genrestä toiseen. Mutta erästä monen toivomaa erikoisjaksoa ei tällä kaudella nähdä. Voi
      Tv-sarjat
      32
      1316
    10. Onko meillä

      Molemmilla nyt hyvät fiilikset😢ei ainakaan mulla mutta eteenpäin on mentävä😏ikävä on, kait se helpottaa ajan myötä. Ko
      Ikävä
      9
      1299
    Aihe