Pozdravljeni!
Na listu imam vrstice od 1 do 20, ki so vidne. Vrstice od 21 pa do 30 pa so skrite.
Ali je možno, ko v vrstici 20, stolpec n.pr. "D" vpišem nek podatek, se razkrije naslednja, to je 21 vrstica in tako naprej?
Hvala za odgovor in LP!
Razkrivanje vrstice
Pozdravljeni!
Vse je možno...
Makro deluje, če vpišete vrednost v katero koli celico, ki ima naslednjo vrstico skrito.
Nič niste rekli, kam se naj potem postavi kazalec celice po vnosu. Postavil sem ga eno vrstico nižje.
P.S.: Marko se proži ob dogodku Change, kar pomeni, da se proži samodejno ob vsaki spremembi na listu.
Vse je možno...
Koda: Izberi vse
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Offset(1, 0).EntireRow.Hidden = True Then 'če je vrstica pod aktivno celico skrita
vrstica = Target.Row 'zapomnim si pozicijo vrstice
stolpec = Target.Column 'pozicija stolpca
Target.Offset(1, 0).EntireRow.Hidden = False 'razkrijem
End If
Range("a1").Select
ActiveCell.Offset(vrstica, stolpec - 1).Select 'se postavim v celico
End Sub
Nič niste rekli, kam se naj potem postavi kazalec celice po vnosu. Postavil sem ga eno vrstico nižje.
P.S.: Marko se proži ob dogodku Change, kar pomeni, da se proži samodejno ob vsaki spremembi na listu.
Življenje je enostavno, če poznaš "The Secret".
GoldZ
GoldZ
Žal meni ta makro ne deluje. Vedno, ko vpišem nek podatek in sicer v katerokoli celici (tudi pod skritimi vrsticami), se makro ustavi na:
Hvala in LPB!
Koda: Izberi vse
vrstica = Target.Row 'zapomnim si pozicijo vrstice
Zanimivo...
Meni deluje čisto Ok... Priznam pa, da je en mali "bugec" v kodi.
Koti vidite, sem prestavil vse znotraj IF stavka... mogoče ga to moti.
Je pa težko iskati rešitev, če ti deluje Ok.
Meni deluje čisto Ok... Priznam pa, da je en mali "bugec" v kodi.
Koda: Izberi vse
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Offset(1, 0).EntireRow.Hidden = True Then 'če je vrstica pod aktivno celico skrita
vrstica = Target.Row 'zapomnim si pozicijo vrstice
stolpec = Target.Column 'pozicija stolpca
Target.Offset(1, 0).EntireRow.Hidden = False 'razkrijem
Range("a1").Select
ActiveCell.Offset(vrstica, stolpec - 1).Select 'se postavim v celico
End If
End Sub
Je pa težko iskati rešitev, če ti deluje Ok.
Življenje je enostavno, če poznaš "The Secret".
GoldZ
GoldZ
Pozdravljeni,
GoldZ vam je nakazal pravilno pot, ni pa upošteval, da vi želite "odpreti" novo vrstico samo, če nekaj vpišete v kolono D. Koda je torej takšna:
GoldZ vam je nakazal pravilno pot, ni pa upošteval, da vi želite "odpreti" novo vrstico samo, če nekaj vpišete v kolono D. Koda je torej takšna:
Koda: Izberi vse
Private Sub Worksheet_Change(ByVal Target As Range)
' ali sem koloni D in je notri nekaj vpisano
If (Target.Column = 4) And (Not IsEmpty(Target)) Then
' če je naslednja vrstica skrita, potem jo razkrijem
If Target.Offset(1, 0).EntireRow.Hidden Then Target.Offset(1, 0).EntireRow.Hidden = False
End If
End Sub
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator