Prepis podatkov s pogojem na določeno mesto
Prepis podatkov s pogojem na določeno mesto
Na "Listu1" imam tabelo v katero vpisujem troje vrst podatkov: Datum, "Podatek A" in "Podatek B". Na "Listu2" imam seznam vseh možnih "Podatkov A", poleg vsakega pa bi rad iz "Lista1" prekopiral samo tisti "Podatek B", ki ustreza "Podatku A" (datum v tem primeru zanemarim).
Primer:
List1 Podatek A Podatek B
Jaka 15
List2 Podatek A Podatek B
Miha
Jaka 15
Neža
Upam, da sem bil kolikor toliko razumljiv.[/b]
Primer:
List1 Podatek A Podatek B
Jaka 15
List2 Podatek A Podatek B
Miha
Jaka 15
Neža
Upam, da sem bil kolikor toliko razumljiv.[/b]
To vam bo rešila funkcija VLOOKUP, ki sprejme 4 parametre,
nekaj o funkciji VLOOKUP si lahko preberete tukaj, zelo veliko tematik s podrobnimi navodili pa imate tudi v forumu. Zgoraj izberite opcijo IŠČI in vpišite VLOOKUP.
- Kaj iščete (v vašem primeru A2)
- Območje kjer iščete (v vašem primeru List1!B2:C100)
- Stolpec iz katerega vrednost želite (stolpec glede na območje), v vašem primeru torej 2
- False (tu vnašajte konstatno false (true ima poseben pomen))
Koda: Izberi vse
=VLOOKUP(A2; List1!B2:C100; 2; false)
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator
Matjaž, hvala za odgovor. Tabeli sem dodal še stolpec, v katerem sem z "IF" funkcijo določil, da mi ob danem pogoju izpiše 1, oziroma 0, če pogoj ni izpolnjen. Sedaj pa bi rad na List2 prekopiral samo tiste vrstice, ki imajo v tem dodatnem stolpcu 1. Prekopiral bi rad samo vrednosti, brez formul. Hvala že vnaprej.
V tem primeru funkcija VLOOKUP res ne pomaga. Posnel sem macro, ki mi prekopira samo vrednosti treh stolpcev in 31 vrstic, zadnji stolpec (v katerem so samo enke in ničle) razvrsti padajoče (najprej enke, nato ničle), sedaj pa bi rad prekopiral samo zapise z vrednostjo 1 (seveda brez tega dodatnega stolpca). Ko se postavim na prvi zapis in poizkušam najti zadnji zapis (kombinacija tipk: CTRL+END+puščica navzdol), mi kurzor skoči na zadnjo kopirano celico, to je v 31 vrstico, ki pa je vsebinsko prazna. Nekje na tem forumu sem nekoč rešitev že našel (macro), pa se bojim, da je to bilo še pred sesutjem prvega foruma.
Matjaž - ne gre. Malo premalo izkušenj imam z VBA-jem. Prilagam del kode, ki mi sicer prekopira prvo vrstico, ne pa tudi ostalih. Nekje na začetku je napaka, pa pojma nimam kako bi stvar rešil.
Koda: Izberi vse
' izbira zapisov z vrednostjo 1
Range("u2").Select
Dim celica As Integer
celica = ActiveCell.Offset(1, 0)
For celica = 1 To 31
If ActiveCell = 1 Then
ActiveCell.Offset(0, -5).Select
Selection.Copy
ActiveCell.Offset(0, 6).Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveCell.Offset(0, -5).Select
Selection.Copy
ActiveCell.Offset(0, 6).Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveCell.Offset(0, -5).Select
Selection.Copy
Range("u2").Offset(0, 6).Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveCell.Offset(0, -5).Select
Selection.Copy
Range("u2").Offset(0, 6).Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveCell.Offset(0, -5).Select
Selection.Copy
Range("u2").Offset(0, 6).Select
ActiveSheet.Paste
Application.CutCopyMode = False
ActiveCell.Offset(0, -5).Select
End If
Next