[ pcpopovic @ 18.03.2016. 16:46 ] @
Hteo sam postaviti "vremensku zaštitu" korišćenja Excel fajla Kod-om:

Sub Workbook_Open()
Dim pswrd As String, rok As Date
rok = DateSerial(2016, 3, 16)
pswrd = InputBox("Upišite lozinku")
If pswrd = "12345" Then
If Date > rok Then
MsgBox "ISTEKAO JE DATUM ZA UPOTREBU! kontaktirajte autora"
ActiveWorkbook.Close
End If
Else
ThisWorkbook.Close
End If
End Sub

Ali, imam problem.
Kada se fajl otvara - traži lozinku (to je u redu), ali ako se lozinka ne upiše i izabere se: "Sačuvaj" ili "Nemoj sačuvati" - fajl se zatvara (i to je u redu), ali, ako se izabere "Odustani" - dozvoljem je pristup fajlu.
Ako se lozinka ispravno upiše - dolazi se do poruke: "ISTEKAO JE DATUM ZA UPOTREBU! kontaktirajte autora" (i to je u redu) i opet nudi: "Sačuvaj", "Nemoj sačuvati" i "Odustani". Na prve dve komande - zatvara fajl, a na "Odustani" - opet dozvoljava ulaz u fajl.
Radni listovi su zaštićeni (istom lozinkom) i namerno sam stavio datum koji je istekao, radi probe. U jednom momentu mi je Excel čak i prijavio (famoznu) grešku 1004.
[ pcpopovic @ 19.03.2016. 12:46 ] @
Pokušao sam još neke kombinacije, ali mi uvek na dugme "Odustani" omogućava ulazak u fajl. Help!
[ jaskojsako @ 19.03.2016. 23:45 ] @
Pozdrav
u prilogu ti je primjer probne verzije,stavljas vremensko ograničenje koliko želiš.
[ Ivek33 @ 20.03.2016. 00:21 ] @
Pogledaj VBA kod autora 'cpearson'
[ pcpopovic @ 20.03.2016. 12:50 ] @
Citat:
jaskojsako:
Pozdrav
u prilogu ti je primjer probne verzije,stavljas vremensko ograničenje koliko želiš.


Ovo je OK. Ali mi opet, i dalje, na pritisak dugmeta "odustani" (ukoliko stavim datum koji je istekao) fajl može nastaviti sa radom. Traba mu (VBA kodu) dodati naredbu - liniju, koja će zatvarati fajl posle:: "MsgBox ("Probna verzija je istekla,kontktirajte autora")". A mene VBA samo "obavesti": "MsgBox ("Imate jos " & exdate - Date & "za isprobavanje programa")" - ovde kod datuma piše "-5" (broj dana za koliko je prekoračen datum) i sa aplikacijom se može nastaviti sa radom.
[ pcpopovic @ 20.03.2016. 13:30 ] @
@jakojsako i @Ivek33

Sve sam "sredio" kombinujući vaše dve poruke. Hvala mnogo i pozdrav.
[ pcpopovic @ 20.03.2016. 13:52 ] @
Citat:
Ivek33:
Pogledaj VBA kod autora 'cpearson'


Dok nismo zatvorili temu...
Gde bi - u prvom kodu, kod ovog autora, trebalo se postaviti datum?
[ jaskojsako @ 20.03.2016. 14:13 ] @
Pozdrav,kada istekne trial aplikacija se zatvori i ne moze dalje da radi ,
probaj staviti datum manji od trenutnog datuma da provjeris
a mozes kombinovatii sa macrom neke sljedece događaje ,da usmjeri na tvoju web stranicu,izbrise sve radne listove itd


Sto se tice gdje se postavlja datum za određivanje trial verzije
exdate = "03/15/2016" mjesec/dan/godina


Private Sub Workbook_Open()
Dim exdate As Date
exdate = "03/15/2016"
If Date > exdate Then
MsgBox ("Probna verzija je istekla,kontktirajte autora")
ActiveWorkbook.Close
End If
MsgBox ("Imate jos " & exdate - Date & " dana za isprobavanje programa")
End Sub
[ Ivek33 @ 20.03.2016. 14:13 ] @
Citat:
pcpopovic:Sve sam "sredio" kombinujući vaše dve poruke. Hvala mnogo i pozdrav.
Odlično! a mogao bi postaviti funkcionalan primjer ovdje na forumu da i ostali članovi foruma vide rješenje ako budu imali sličan problem. Zar ne?
[ jaskojsako @ 20.03.2016. 14:39 ] @
Primjer Trial sa redirekcijom na web stranicu autora
[ pcpopovic @ 20.03.2016. 15:53 ] @
Citat:
Ivek33:
Citat:
pcpopovic:Sve sam "sredio" kombinujući vaše dve poruke. Hvala mnogo i pozdrav.
Odlično! a mogao bi postaviti funkcionalan primjer ovdje na forumu da i ostali članovi foruma vide rješenje ako budu imali sličan problem. Zar ne?


OK! Ovako je to kod mene:

Private Sub Workbook_Open()
Dim exdate As Date
exdate = "01/01/2017"
If Date > exdate Then
MsgBox ("Vaša verzija aplikacije je istekla - kontaktirajte autora."), vbOKOnly
ThisWorkbook.Close savechanges:=False
End If
MsgBox ("Aplikacija je autorsko vlasništvo PC_Popović. Srećan rad.")
End Sub