v Excelu imam na enem listu šifrant (stolpec A je šifra, stolpec B je opis), na drugem listu pa imam določene izračune, kjer se vpiše šifro in potem ostale podatke. Zdraven šifre imam sedaj dodan stolpec opis, kjer se s funkcijo vlookup zapiše opis šifre. Rada bi ta stolpec skrila (ali pa morda sploh ni potreben) in bi se opis šifre izpisal v nekakšnem sporočilnem polju (kot npr. komentar). Poskusila sem tudi z določanjem veljavnosti podatkov, vendar v sporočilo ne morem vnesti funkcije, veljavnost podatkov pa tudi sprejme samo en stolpec, ne pa tudi opisov. Ali obstaja rešitev?
Hvala za odgovor.
sporočilno polje
Re: sporočilno polje
Pozdravljeni,
nekako ste me izgubili oz. ne razumem kaj bi želeli doseči:

nekako ste me izgubili oz. ne razumem kaj bi želeli doseči:
Če bi stolpec želeli skriti oz. ga sploh ne potrebujete; zakaj ste se potem sploh mučili s funkcijo VLOOKUP?Toda napisal/-a:Zdraven šifre imam sedaj dodan stolpec opis, kjer se s funkcijo vlookup zapiše opis šifre. Rada bi ta stolpec skrila (ali pa morda sploh ni potreben)
V komentar ne morete vstaviti funkcije, tako da opisa v komentar ne boste mogli spravitiToda napisal/-a: ...in bi se opis šifre izpisal v nekakšnem sporočilnem polju (kot npr. komentar).
Veljavnost podatkov je smiselna za vnos in vi lahko z veljavnostjo podatkov kontrolirate šifre (tisto kar vnašate) in ne dešifracij... Če torej vnašate pošte številke potem vam veljavnost lahko kontrolira da so vse vnešene šifre pač res šifre pošt in ne da če vi vnesete 1000 da bi Excel kontroliral da je to Ljubljana - to ni kontrola! Kontrola je samo in izključno ali 1000 je poštna števila ali ne.Toda napisal/-a:Poskusila sem tudi z določanjem veljavnosti podatkov, vendar v sporočilo ne morem vnesti funkcije
Kot rečeno, vas ne razumem, kaj želite ;(Toda napisal/-a:...veljavnost podatkov pa tudi sprejme samo en stolpec, ne pa tudi opisov. Ali obstaja rešitev?
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator
To, kar imam sedaj v stolpcu B (opis šifre), bi rada imela v sporočilnem polju. Se pravi informacijo, ki je v stolpcu B nujno potrebujem, vendar bi rada imela to informacijo kot neke vrste sporočilno polje in zato stolpec B ne bi bil več potreben. Npr. Ko bi uporabnik napisal šifro bi se mu v posebnem okenčku prikazal opis te šifre.
Upam, da sem bila sedaj kaj bolj jasna.
Lp
Upam, da sem bila sedaj kaj bolj jasna.
Lp
Najprej hvala za namig.
Sedaj sem zapisala makro, ki mi vrednost šifre zapiše v celico G5, kar bo tudi v redu, ker imam zgornje vrstice zamrznjene. No, potem pa sem uporabila še Worksheet_Change, ki zažene omenjeni makro ob spremembi podatkov v stolpcu F. Žal mi sedaj makro vrne vrednost naslednje celice od spremenjene, namesto spremenjene. Ali obstaja rešitev?. (prilagam makro).
hvala za pomoč.
Sub Tester6()
Set rng = Range("a:B")
Results = Application.vlookup(ActiveCell.Value, _
rng, 2, False)
If Not IsError(Results) Then
Range("g5").Value = Results
Else
Range("g5").Value = "konto ne obstaja"
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 6 Then
Tester6
End If
Sedaj sem zapisala makro, ki mi vrednost šifre zapiše v celico G5, kar bo tudi v redu, ker imam zgornje vrstice zamrznjene. No, potem pa sem uporabila še Worksheet_Change, ki zažene omenjeni makro ob spremembi podatkov v stolpcu F. Žal mi sedaj makro vrne vrednost naslednje celice od spremenjene, namesto spremenjene. Ali obstaja rešitev?. (prilagam makro).
hvala za pomoč.
Sub Tester6()
Set rng = Range("a:B")
Results = Application.vlookup(ActiveCell.Value, _
rng, 2, False)
If Not IsError(Results) Then
Range("g5").Value = Results
Else
Range("g5").Value = "konto ne obstaja"
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 6 Then
Tester6
End If
V makru se ne smete sklicevati na aktivno celico, temveč na celico, ki se je spremenila. Popravek vašega makra je spodaj:
Koda: Izberi vse
Sub Tester6(Target as Range)
Set rng = Range("a:B")
Results = Application.vlookup(Target.Value, rng, 2, False)
If Not IsError(Results) Then
Range("g5").Value = Results
Else
Range("g5").Value = "konto ne obstaja"
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 6 Then
Tester6 Target
End If
end if
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator