Lep pozdrav,
imam vprašanje in prosim za pomoč.
Za anketo pripravljam excelovo tabelo, v kateri bi izpolnjevalcem omejil možnost vnosa podatkov s Preverjanjem veljavnosti podatkov / seznam.
Gre za vprašalnik o vozilih, zato bi stvar naredil tako:
V celici A1 lahko izpolnjevalec izbere iz seznama izbere npr. opcije Audi, BMW VW...
V kolikor izbere npr. AUDi, se mu v celici B1 v seznamu ponudijo le opcije A1, A2, A3, A4 ....
V kolikor izbere BMW se mu v celici B1 v seznamu ponudi le opcija opcija serija 1, serija 3, serija 5...
Na ta način bom lažje selekcioniral in obdelal odgovore, prav tako pa mi ne bo mogel vsakdo vpisovati po svoje npr. A1 turbodiesel...
Upam, da sem razumljivo napisal vprašanje in prosim za odgovor.
Hvala
Preverjanje veljavnosti podatkov in pogoj
Re: Preverjanje veljavnosti podatkov in pogoj
Pozdravljeni
Vaš problema sem rešil takole:
Upošteval sem samo dve znamki, po potrebi pa jih boste dodali še več.
Seveda boste morali kodo malo še prirediti svojim potrebam. Upam, da se boste znašli kaj je potrebno popraviti v kodi in na listu.
Kodo prilepite na v VBA okolju -(Alt + F11) v kodo lista kjer imate anketo.
Verjetno je stvar rešljiva še kako drugače, no jaz sem si zamislil tako!
Da bo stvar bolj jasna pa še slika kje se nahajajo seznami na mojem listu rešitve...
Vaš problema sem rešil takole:
Upošteval sem samo dve znamki, po potrebi pa jih boste dodali še več.
Koda: Izberi vse
Private Sub Worksheet_Change(ByVal Target As Range)
If (Not Intersect(Target, Range("B2")) Is Nothing) Then ''' če je izbrana oz. spremenjena
Select Case Range("B2").Value
Case "Audi"
Range("C2").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$K$3:$K$5"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
Case "Bmw"
' Range("C2").Value = "Bmw"
Range("C2").Select
With Selection.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=$L$3:$L$5"
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Select
Range("C2").Value = Range("B2").Value
End If
End Sub
Kodo prilepite na v VBA okolju -(Alt + F11) v kodo lista kjer imate anketo.
Verjetno je stvar rešljiva še kako drugače, no jaz sem si zamislil tako!
Da bo stvar bolj jasna pa še slika kje se nahajajo seznami na mojem listu rešitve...
lp,
cedra
cedra
Re: Preverjanje veljavnosti podatkov in pogoj
Pozdravljeni!
Če se nočete ukvarjati z makri sem našel še eno zelo enostavno rešitev.
Dam primer začnite v stolpcu L1 z audi in pod njim naštejte vse modele, M1- bmw itd. kolikor hočete.
v celico K2 pa vstavite formulo
Formulo skopirajte navzdol samo pazite da spremeni rov num. index ker se noče sam spreminjat(vsaj pri meni).
potem si pa v celico A1 naredite seznam od L1:AA1.V B1 pa od K2:K30.
Območja si seveda ustrezno popravite po svoji tabeli.
Upam da ste me razumeli .
Če se nočete ukvarjati z makri sem našel še eno zelo enostavno rešitev.
Dam primer začnite v stolpcu L1 z audi in pod njim naštejte vse modele, M1- bmw itd. kolikor hočete.
v celico K2 pa vstavite formulo
Koda: Izberi vse
=HLOOKUP($A$1;$L$1:$AA$12;2;FALSE)
potem si pa v celico A1 naredite seznam od L1:AA1.V B1 pa od K2:K30.
Območja si seveda ustrezno popravite po svoji tabeli.
Upam da ste me razumeli .
Re: Preverjanje veljavnosti podatkov in pogoj
Tam, kjer vpišete, kateri seznam je dovoljen za vpis modela avta, so dovoljene tudi formule.
Če si izposodim primer, ki ga je zgoraj nalepil cedra, v celici C2 kot dovoljen seznam določite "=IF(B2="Audi";K3:K5;L3:L5)".
Nič drugega ni potrebno.
Če si izposodim primer, ki ga je zgoraj nalepil cedra, v celici C2 kot dovoljen seznam določite "=IF(B2="Audi";K3:K5;L3:L5)".
Nič drugega ni potrebno.
Re: Preverjanje veljavnosti podatkov in pogoj
Hvala za nasvete in pomoč.
bom uporabil.
LP
matej
bom uporabil.
LP
matej