Zanima me kako bi napisal pravilno definicijo v VB, da bi mi podatek (Metka), ki je v drugi tabeli poiskala/izbrala celico s podatkom v tabeli z nizom podatkov (Metka).
Npr.:
Iščem
Metka
v tabeli z nizom podatkov
1 Janko Da
2 Metka Ne
…
100 Jože Da
Za vašo pomoč in odgovor se vam lepo zahvaljujem in vas lepo pozdravljam
iskanje podatka v nizu podatkov
Pozdravljeni,
Ne razumem, kaj točno želite. Če govorite o VB-ju potem bi morali natančneje definirati, kaj mislite s tabelo, kajti v tem primeru lahko govorite o pomnilniški tabeli ali pa o podatkovni bazi oz. o tabeli v podatkovni bazi.
V kolikor pa mislite VBA potem pa sklepam, da govorite o Excelu in če je temu tako, potem za to sploh ne potrebujete VBA-ja, saj zna to rešiti že Excel. No; vsaj delno zna to rešiti Excel, ki vam lahko pove lokacijo celice, tja pa vas ne more prestaviti, to pa res mora narediti VBA.
Kaj vas torej zanima?
Ne razumem, kaj točno želite. Če govorite o VB-ju potem bi morali natančneje definirati, kaj mislite s tabelo, kajti v tem primeru lahko govorite o pomnilniški tabeli ali pa o podatkovni bazi oz. o tabeli v podatkovni bazi.
V kolikor pa mislite VBA potem pa sklepam, da govorite o Excelu in če je temu tako, potem za to sploh ne potrebujete VBA-ja, saj zna to rešiti že Excel. No; vsaj delno zna to rešiti Excel, ki vam lahko pove lokacijo celice, tja pa vas ne more prestaviti, to pa res mora narediti VBA.
Kaj vas torej zanima?
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator
iskanje podatka v nizu podatkov
Ojla.
Gre za MS Excel in za vprašanje kode v eni od procedur makroja, ki naj bi se izvajala v MS Excelu.
Težava je v tem, da če v kodi makra uporabim izjavo If..Then, je ta zelo, zelo velik (tja do 40MB).
Npr.:
Iskani podatki so zapisani v tabeli v stolpcu AB (npr.:"Metka")
Iščem pa ta podatek v drugi tabeli z raznimi dodatnimi podatki ki se nanašajo na iskani podatek in so zapisani v stolpcih A do Z (npr.: "Metka je zapisana v eni izmed vrstic v stolpcu F).
Če zapišem naslednji primer kode
If Range("AB201") = Range("F201") Then
...
End If
If Range("AB201") = Range("F202") Then
...
End If
moram za vsako posamezno celico v stolpcu AB se vprašati če je enaka celici v tabeli z dodatnimi podatki (stolpec F), da mi jo izbere in kopira še določene dodatne podatke zapisane v isti vrstici na drug list po zaporedju podatkov za iskanje v stolpcu AB.
Iskanje ca. 80. podatkov zapisanih v stolpcu AB se opravi večkrat saj zaporedje v stolpcu AB ni vedno enako.
Pri manjšem številu podatkov v tabeli z dadatnimi podatki, sem napisal na drug list v posamezno celico sklic s formulo (s kombinacijo funkcij IF in CHOOSE), pri večjem, pa me opozarja, da je formula predolga.
Upam, da nisem preveč zakompliciral stvari.
Lep pozdrav
Gre za MS Excel in za vprašanje kode v eni od procedur makroja, ki naj bi se izvajala v MS Excelu.
Težava je v tem, da če v kodi makra uporabim izjavo If..Then, je ta zelo, zelo velik (tja do 40MB).
Npr.:
Iskani podatki so zapisani v tabeli v stolpcu AB (npr.:"Metka")
Iščem pa ta podatek v drugi tabeli z raznimi dodatnimi podatki ki se nanašajo na iskani podatek in so zapisani v stolpcih A do Z (npr.: "Metka je zapisana v eni izmed vrstic v stolpcu F).
Če zapišem naslednji primer kode
If Range("AB201") = Range("F201") Then
...
End If
If Range("AB201") = Range("F202") Then
...
End If
moram za vsako posamezno celico v stolpcu AB se vprašati če je enaka celici v tabeli z dodatnimi podatki (stolpec F), da mi jo izbere in kopira še določene dodatne podatke zapisane v isti vrstici na drug list po zaporedju podatkov za iskanje v stolpcu AB.
Iskanje ca. 80. podatkov zapisanih v stolpcu AB se opravi večkrat saj zaporedje v stolpcu AB ni vedno enako.
Pri manjšem številu podatkov v tabeli z dadatnimi podatki, sem napisal na drug list v posamezno celico sklic s formulo (s kombinacijo funkcij IF in CHOOSE), pri večjem, pa me opozarja, da je formula predolga.
Upam, da nisem preveč zakompliciral stvari.
Lep pozdrav
Jimmi
Če vas vsaj pribljižno razumem, potem ste zakomplicirali, da se bolj zakomplicirati ne da. Seveda, če vas prav razumem; iz vašega vprašanja namreč nikakor ne razberem, kaj natančno vas muči.
Občutek imam, da vas muči sledeče. Imate neka imena in ob teh imenih bi želeli imeti še druge podatke, ki spadajo k tem imenom in so zapisani v drugi tabeli. Če je temu tako, potem sploh ne potrebujete VBA-ja in vse vam reši najosnovnejša funkcija VLOOKUP, o kateri si lahko več preberete med pogostimi vprašanji:
#165 http://matjazev.net/pnew/index.php?Page ... ip165.html
ter v nekaterih tematikah tega foruma. Tematike najdete tako, da zgoraj v forumu odprete opcijo 'Išči' in v iskalno polje vpišete niz VLOOKUP. Našli boste preko 10 tematik.
Občutek imam, da vas muči sledeče. Imate neka imena in ob teh imenih bi želeli imeti še druge podatke, ki spadajo k tem imenom in so zapisani v drugi tabeli. Če je temu tako, potem sploh ne potrebujete VBA-ja in vse vam reši najosnovnejša funkcija VLOOKUP, o kateri si lahko več preberete med pogostimi vprašanji:
#165 http://matjazev.net/pnew/index.php?Page ... ip165.html
ter v nekaterih tematikah tega foruma. Tematike najdete tako, da zgoraj v forumu odprete opcijo 'Išči' in v iskalno polje vpišete niz VLOOKUP. Našli boste preko 10 tematik.
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator
Ojla.
Najlepša hvala za pomoč in nasvet.
Problemček sem uspešno rešil s funkcijo VLOOKUP.
Tudi sam sem najprej poskušal s to funkcijo, a nisem dobil želenega rezultata, ker nisem v prvi stolpec tabele s podatki postavil pravi stolpec to je stolpec ki vsebuje tudi iskani podatek.
Lep pozdrav s Primorske
Najlepša hvala za pomoč in nasvet.
Problemček sem uspešno rešil s funkcijo VLOOKUP.
Tudi sam sem najprej poskušal s to funkcijo, a nisem dobil želenega rezultata, ker nisem v prvi stolpec tabele s podatki postavil pravi stolpec to je stolpec ki vsebuje tudi iskani podatek.
Lep pozdrav s Primorske
Jimmi