Moni haku kaava vba

jaakkoko

Minulla työkirjassa Taul2 data alue, A:I830. 1 rivillä on varaosakaapin NIMI.

Tein nauhoittamalla etsintä kaavan, laitin kyselyn msgoxiin, millä annetaan haku arvo, Nyt homma toimii jos on vain yksi saman niminen, mutta tiedän muutaman saman numeroisen varaosan sijaitsevan 3:SSA erikaapissa. Kuinka saisin tehtyä ns. listauksen tähän msgboxiin. Nyt se kertoo minulle vain tuon A1 olevan arvon. Haluaisin sen kuitenkin ilmoittavan, ESIM A1, C1 ja D4 kaapeissa on kyseisiä teriä?

3

481

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • näinyhtäkkiä

      käydä siirtämässä ne muutamat varaosat kaappiin jossa "kaimat" ovat?

      • taulukon moduuliin...
        nyt hakee solun K1 arvoja sarakkeista A-I ja ilmoittaa solun osoitteen, jos haluat että palauttaa sen ekan rivin kaapin nimen niin muutellaan sitten

        Private Sub Worksheet_Change(ByVal Target As Range)
        Dim tulos As String
        On Error Resume Next
        If Not Intersect(Target, Range("K1")) Is Nothing Then
        tulos = EtsiJaNäytä(Range("K1"), Range("A:I")).Address
        If tulos = "" Then
        MsgBox "ei löytynyt!"
        Else
        MsgBox tulos
        End If
        End If
        End Sub

        ja moduuliin...

        Function EtsiJaNäytä(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 EtsiJaNäytä = solu
        EkaOsoite = solu.Address
        Do
        Set EtsiJaNäytä = Union(EtsiJaNäytä, solu)
        Set solu = .FindNext(solu)
        Loop While Not solu Is Nothing And solu.Address EkaOsoite
        End If
        End With
        End Function


      • kunde kirjoitti:

        taulukon moduuliin...
        nyt hakee solun K1 arvoja sarakkeista A-I ja ilmoittaa solun osoitteen, jos haluat että palauttaa sen ekan rivin kaapin nimen niin muutellaan sitten

        Private Sub Worksheet_Change(ByVal Target As Range)
        Dim tulos As String
        On Error Resume Next
        If Not Intersect(Target, Range("K1")) Is Nothing Then
        tulos = EtsiJaNäytä(Range("K1"), Range("A:I")).Address
        If tulos = "" Then
        MsgBox "ei löytynyt!"
        Else
        MsgBox tulos
        End If
        End If
        End Sub

        ja moduuliin...

        Function EtsiJaNäytä(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 EtsiJaNäytä = solu
        EkaOsoite = solu.Address
        Do
        Set EtsiJaNäytä = Union(EtsiJaNäytä, solu)
        Set solu = .FindNext(solu)
        Loop While Not solu Is Nothing And solu.Address EkaOsoite
        End If
        End With
        End Function

        korvaa aikaisempi koodi tällä ja näyttää kaappien nimet 1. riviltä
        taulukon moduuliin...

        Private Sub Worksheet_Change(ByVal Target As Range)
        Dim tulos As String
        Dim a As Variant
        Dim Kaapit As String
        On Error Resume Next
        If Not Intersect(Target, Range("K1")) Is Nothing Then
        tulos = EtsiJaNäytä(Range("K1"), Range("A:I")).Address
        If tulos = "" Then
        MsgBox "ei löytynyt!"
        Else
        a = Split(tulos, ",")
        For i = 0 To UBound(a)
        Kaapit = Kaapit & Range(Mid(a(i), 2, 1) & 1) & vbNewLine
        Next
        MsgBox Kaapit
        End If
        End If
        End Sub


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

    Takaisin ylös

    Luetuimmat keskustelut

    1. Sanna Marin kysyi hämmästyneenä: Onko Suomessa jäänmurtajia?

      Nettilehden toimittaja kysyi Sanna Marinilta suoraan, että sovittiinko nuo jäänmurtajien kaupat jo 2019, jolloin Marin k
      Maailman menoa
      71
      3889
    2. Voiko normaali ihminen ryhtyä vasemmistolaiseksi?

      Tätä jäin pohdiskelemaan.
      Maailman menoa
      101
      3505
    3. SDP haluaa 40 000 nettomaahanmuuttajaa

      SDP:n Suunnanmuutos-vaihtoehtobudjetissa, käy ilmi, että demarit itse asiassa vaativat räjähdysmäistä ”työperäisen” maah
      Maailman menoa
      78
      3338
    4. Mikä tuota vasemmistolaisista jankkaavaa vaivaa?

      Pahasti on ihon alle, siis korvien väliin, päässeet kummittelemaan. Ei ole terveen ihmisen merkki jankata yhdestä asia
      Maailman menoa
      36
      2638
    5. Mitä ajattelit kun näit

      kaivattusi ensimmäisen kerran? xd
      Ikävä
      124
      1598
    6. Nyt meni lopulliset lämmöt.

      Alan käyttäytymään yhtä kylmästi miehiä kohtaan kuin mua kohtaan on käyttäydytty ja vain käytetty viimeiset pari vuotta
      Sinkut
      36
      1516
    7. Meitä ei tule

      Koska periaatteemme ovat rakkautta vahvempia. Tämä on siis koettelemus, jonka tarkoitus on vahvistaa meitä yksilöinä 😌
      Ikävä
      22
      1114
    8. Onko erityinen paikka jossa haluaisit nyt olla

      Onko joku spesiaali lempipaikka missä mieluiten olisit?
      Ikävä
      42
      1100
    9. Sulla on avaimet ja keinot

      Jos haluat jatkaa tutustumista. Itse olen niin jäässä etten pysty tekemään enää mitään. Pidempi keppi johon on helpompi
      Ikävä
      18
      1096
    10. Itseään kannattaa tarkastella realistisesti ja

      miettiä mihin ne rahkeet oikeesti riittää. Tyhmempikin ymmärtää että varakas ylemmän tason mies ei kelpuuta sellaista ku
      Ikävä
      118
      1016
    Aihe