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ä?
Moni haku kaava vba
3
497
Vastaukset
- 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 Functionkunde 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 Functionkorvaa 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ä.
Luetuimmat keskustelut
Eutanasia - miksi eläimelle sallitaan armokuolema, mutta ihmiselle ei?
Olen pitkään ihmetellyt yhtä asiaa Suomessa. Kun koira kärsii parantumattomasta sairaudesta ja kovista kivuista, eläinlä5711877Sanna Marin vetänyt leukoja 11 kertaa
Tästähän oli joskus polemiikkia, kun muistaakseni lupasi kymmenen tai jotain vedellä. No nyt niin on, ainakin omien san494906Sosiaalidemokratia romahtanut kautta maailman
nuoret eivät enää kannata järjetöntä aatetta, joten demarien täytyy hakea kannattajia mamuista. Ruotsin sos.demit jo kie2933009Miksi Seta ja Sofia Virta ei vaadi muslimeita kunnioittamaan priden-arvoja?
Kuten tiedetään niin islam ei hyväksy sitä mitä pride edustaa. Seta-pomo Mikkonen nosti hirveän äläkän kun yksi tepsin1872885- 1302006
Farmi Suomi: Kokeeko Frederik, 81, saman kohtalon kuin ikämies Danny?
Danny, musiikkineuvos Ilkka Lipsanen, nähtiin mukana Farmi Suomi -realityssä v. 2024. Danny teki yllätysratkaisun ja tuo201305Sosialismia Tampereella: Virallinen ilmiantolinja avautuu kaupungissa
Nyt siis mennään mansessa ihan justiinsa samaan malliin kuin entisessä Neuvostoliitossa, jossa saattoi ilmiantaa naapuri211194- 951114
40 vuotta töitä paiskinut ja 3 vuotta työttömänä mamuna Suomessa, sama eläke
Jokin mättää. Eläkettä ei pidä maksaa lainkaan mamuille jos työhistoriaa ei ole vähintään 10 vuotta takana.2141107En luota sinuun
en edelleenkään yhtään tiedä oletko lintu vai kala vai kalavale. Ja ilmeisesti haluat pitää sen niin, syitä voi vain arv70921