Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Zastita prilikom otvaranja sheet-a

[es] :: Office :: Excel :: Zastita prilikom otvaranja sheet-a

[ Pregleda: 3785 | Odgovora: 18 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

negative7
Ivan Raic

Član broj: 186110
Poruke: 151
62.113.4.*



Profil

icon Zastita prilikom otvaranja sheet-a28.05.2011. u 12:46 - pre 156 meseci
Jeli moguce ikako da prilikom aktiviranja sheet2(A prethodno sam u recimo sheetu1) da me pita kao password,i tek ako pogodim password da me prebaci u sheet2?
Jel se moze ovo postici u vba ili pak ima kakva opcija u samim postavkama excela.Protection sheet ne dolazi u obzir.
 
Odgovor na temu

neptuncokg
Predrag M
racunovodja
Kragujevac

Član broj: 230353
Poruke: 326
212.200.65.*



+9 Profil

icon Re: Zastita prilikom otvaranja sheet-a28.05.2011. u 14:12 - pre 156 meseci
Verujem da ima boljih nacina, ali evo jednog resenja za "prvu pomoc". Pozdrav
Prikačeni fajlovi
 
Odgovor na temu

Brodoplovac
Beograd

Član broj: 171299
Poruke: 838
*.adsl.verat.net.



+166 Profil

icon Re: Zastita prilikom otvaranja sheet-a28.05.2011. u 17:41 - pre 156 meseci
Izgleda da ne postoji BeforeSheetActivate događaj.

Moj primer koristi dva sheeta, jedan lažni i jedan pravi, i međusobno ih zamenjuje koristići .Visible propertis.

Kada otvoriš sheet možeš da štikliraš CHECKBOX i onda će sheet biti dostupan sve dok se ne zatvori workbook. Ako se ne štiklira onda će morati da se unosi password prilikom svakog aktiviranja lista.

Password je: PERA

Bile su dve male greške, ispravio sam ih i sada je OK.



[Ovu poruku je menjao Brodoplovac dana 29.05.2011. u 11:34 GMT+1]
Prikačeni fajlovi
 
Odgovor na temu

timmy
Jovan Timotijevic

Moderator
Član broj: 37087
Poruke: 634

Sajt: www.e-tim.net


+89 Profil

icon Re: Zastita prilikom otvaranja sheet-a29.05.2011. u 08:24 - pre 156 meseci
Evo da se i ja pridruzim svojim resenjem ;-)

Code:

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    If Sh.Name = "Sheet2" Then
        Cells.Select
        Selection.EntireColumn.Hidden = True
        If InputBox("Password?", "Please insert password") = "Pass" Then
            Cells.Select
            Selection.EntireColumn.Hidden = False
            Range("A1").Select
        Else
            MsgBox "Access denied!", vbCritical, "Wrong password"
            Application.Goto "Sheet1!r1c1"
        End If
    End If
End Sub


Dva reda iznad Inputbox-a sluze da se sakrije kompletan sadrzaj lista da bi se on otkrivao samo ako je dobra lozinka.
Naravno, samo zato sto ne postoji Before Sheet Activate dogadjaj.
Naime, SheetActivate se podigne tek kada predjemo na ciljni list.

Pozdrav
 
Odgovor na temu

Ivek33

Član broj: 66174
Poruke: 2898



+66 Profil

icon Re: Zastita prilikom otvaranja sheet-a29.05.2011. u 10:02 - pre 156 meseci
Citat:
negative7: Protection sheet ne dolazi u obzir.
Postavlja se pitanje, želiš li zaštititi samo pristup ili želiš da korisnik čak ni ne vidi što je na Sheetu2.
Prve dvije naredbe ne skrivaju Sheet od pogleda dok @Timmy-jeva to radi
No, nijedna od ovih makronaredbi neće biti u funkciji ako korisnik isključi izvršavanje Macro-a u Excelu.

@Timmy-jeva makronaredba je donekle jača od ostalih ali i tu nema pomoći ako korisnik isključi izvršavanje makronaredbi i zna otkriti (unhide) sve ćelije da ne kažem Stupce A, B, C.. u ovom njegovom slučaju.

Ako korisnik i dozvoli izvršavanje Makronaredbi tada moraš zaštititi pristup u VBE (disable ALT+F11) pa čak i pristup dotičnoj Workbook (da korisnik ne vidi Sheets u samoj Workbook i nema pristupa makronaredbama ali ni to nije 100% sigurno)

No ne zavaravaj se, zaštita na ovaj jednostavan način može se probiti
Sve zavisi tko koristi workbook i od koga skrivaš tj. braniš pristup dotičnom Sheetu
 
Odgovor na temu

negative7
Ivan Raic

Član broj: 186110
Poruke: 151
62.113.4.*



Profil

icon Re: Zastita prilikom otvaranja sheet-a29.05.2011. u 13:51 - pre 156 meseci
Hvala vam svima na brzim odgovorima,Trenutno mi se timmiyem prijedlog cini najkorisniji.Onako na prvu nimi se da su i netpuncog i brodoplovac uradili istu stvar samo bez hide colums.
Citat:

Postavlja se pitanje, želiš li zaštititi samo pristup ili želiš da korisnik čak ni ne vidi što je na Sheetu2.
Prve dvije naredbe ne skrivaju Sheet od pogleda dok @Timmy-jeva to radi
No, nijedna od ovih makronaredbi neće biti u funkciji ako korisnik isključi izvršavanje Macro-a u Excelu.

@Timmy-jeva makronaredba je donekle jača od ostalih ali i tu nema pomoći ako korisnik isključi izvršavanje makronaredbi i zna otkriti (unhide) sve ćelije da ne kažem Stupce A, B, C.. u ovom njegovom slučaju.

Ako korisnik i dozvoli izvršavanje Makronaredbi tada moraš zaštititi pristup u VBE (disable ALT+F11) pa čak i pristup dotičnoj Workbook (da korisnik ne vidi Sheets u samoj Workbook i nema pristupa makronaredbama ali ni to nije 100% sigurno)

No ne zavaravaj se, zaštita na ovaj jednostavan način može se probiti
Sve zavisi tko koristi workbook i od koga skrivaš tj. braniš pristup dotičnom Sheetu

Da u pravu si,nisam bas o tom ni razmisljao,prema ovom tvom iskazu cini mi se onda za 100% zastiti sheet kao da je nemoguce??,ili je to moguce sa protection sheet?.posto vise ljudi koristi ovaj file(isti excelov file i to na istom racunalu),ali bi htjeo da samo neki mogu otvorit odredjeni sheet.
 
Odgovor na temu

Brodoplovac
Beograd

Član broj: 171299
Poruke: 838
*.adsl.verat.net.



+166 Profil

icon Re: Zastita prilikom otvaranja sheet-a29.05.2011. u 14:26 - pre 156 meseci
Samo da napomenem da moj primer ima nevidljivi list koji se pojavljuje tek kada se unese password. List "Pass" koji se vidi prilikom unošenja passworda postaje nevidljiv i menja ime. Umesto njega se pojavljuje list koji se zove "Sakrivena" ali koja sada dobija ime "Pass". Na taj način korisnik nema šanse da vidi skrivene podatke.

Postoje dva "Pass" lista - Worksheets(2) i Worksheets(4). Svaki od njih kada je vidljiv ima ime "Pass". Ovo daje mogućnost da se kreiraju "dummy" podaci na Worksheets(2), a da se pravi podaci stave na Worksheets(4).

@negative
Ako hoćeš jaku zaštitu koristi TrueCrypt pa enkriptuj taj Sheet.
 
Odgovor na temu

Ivek33

Član broj: 66174
Poruke: 2898



+66 Profil

icon Re: Zastita prilikom otvaranja sheet-a29.05.2011. u 19:13 - pre 156 meseci
Citat:
Brodoplovac: Na taj način korisnik nema šanse da vidi skrivene podatke.
Dobro si ti to zamislio i to funkcionira za korisnike koji jedva znaju pokrenuti Excel upisati par podataka i snimiti ili samo pogledati informacije. (doduše ima puno macro koda ali radi na način koji si opisao, mada mi se više sviđa @timmijev način)
Međutim, ja pitam svrhu skrivanja (zaštite) koju želi pokretač teme.

Ovo što si ti napravio u dva koraka se razbija i to može prosječni korisnik samo ako malo progugla. Pa čemu svrha zaštite?
1. Zabrani pokretanje makronaredbi u par klikova
2. U VBE postavi Visible skrivenog sheeta i pogleda podatke, zatvori Excel bez snimanja Workbook i vrati izvršavanje makronaredbi na prijašnju razinu

Ili pogleda "top secret" podatke na skrivenom-zaključanom sheetu, kopira ako hoće i sve vrati na staro.
Zašto onda zaključavati i komplicirati život ako se nema povjerenja u nekoga i slično.

Ako i zaključaš ulaz u VBE opet onaj koga zanimaju podaci na tom sheetu i zainati se, kopira file na stick odnese kući (ili na licu mjesta, ako ima vremena i u tajnosti) i sazna "top secret podatke"

Po meni glavne karakteristike ovakvih radnji su:
1. Tko koristi (povjerenje)
2. Razina tajnosti podataka koje se skrivaju
3. Isplativost i kompliciranost radnji
4. Svrha ili cilj

da ne kažem (prihod - rashod = zarada), a zarada nas najviše zanima.

Po meni, svrha zaključavanja u Excelu može se svesti ako radiš Workbook koji sadrži puno makronaredbi koje su važne za funkcioniranje Workbook i organizacije podataka i ništa više, pa ne želiš da netko "prčka" po makronaredbama i nehotice zbrlja dokument. Ako zabrani makronaredbe neće mu Workbook raditi kako treba.

Pogledaj ovaj tvoj file koji vraćam
Prikačeni fajlovi
 
Odgovor na temu

negative7
Ivan Raic

Član broj: 186110
Poruke: 151
62.113.4.*



Profil

icon Re: Zastita prilikom otvaranja sheet-a29.05.2011. u 23:15 - pre 156 meseci
Isprva nisam ni razmisljao o nekom "full security",i ono sto su ovde mi neki dali za rjsenje je sasvim dovoljno,ali sad
opet kad sam procito sto ivek kaze bolje bi bilo kad bi bilo "full security".Ali meni ne treba taj full security.
Vise bi volio kad bi se nekako moglo izvest da onaj sto zna sifru da je moze i promijenit,znate ono upise pravu sifru pa novu i onda mu nova postane glavna sifra.
 
Odgovor na temu

negative7
Ivan Raic

Član broj: 186110
Poruke: 151
*.CARNet.hr.



Profil

icon Re: Zastita prilikom otvaranja sheet-a02.06.2011. u 17:52 - pre 156 meseci
U prilogu je file .xls koji je ocitava vas serisjki broj s diska,mada to je totalno ne vazno.Ono sto je vazno jest da ako ocu da
udjem u VBA editor da mijenjam ili pak da vidim kod treba mi sifra, dal netko zna kako je netko napravio ovu mogucnost na ovom file-u..
Inace na file-e sam slucajno naletio na netu
Prikačeni fajlovi
 
Odgovor na temu

neptuncokg
Predrag M
racunovodja
Kragujevac

Član broj: 230353
Poruke: 326
*.dynamic.isp.telekom.rs.



+9 Profil

icon Re: Zastita prilikom otvaranja sheet-a02.06.2011. u 18:42 - pre 156 meseci
Ja ne znam kako moze da se skine zastita u ovom fajlu, ali imam tu funkciju koju trazis odavno. Negde na netu sam nasao makro. Evo pogledaj u prilogu. ("Seriski broj HDD"). Inace, excelovo svojstvo Application pruza razne mogucnosti da dodjemo do informacija o okruzenju. Jedan primer je u fajlu "Parametri". Pozdrav
Prikačeni fajlovi
 
Odgovor na temu

timmy
Jovan Timotijevic

Moderator
Član broj: 37087
Poruke: 634

Sajt: www.e-tim.net


+89 Profil

icon Re: Zastita prilikom otvaranja sheet-a02.06.2011. u 18:47 - pre 156 meseci
Disk serial number:

Code:

 Public Function GetDriveSerialNumber(Optional ByVal DriveLetter As String) As Long
          Dim fso As Object, Drv As Object
          
          'Create a FileSystemObject object
          Set fso = CreateObject("Scripting.FileSystemObject")
          
          'Assign the current drive letter if not specified
          If DriveLetter <> "" Then
              Set Drv = fso.GetDrive(DriveLetter)
          Else
              Set Drv = fso.GetDrive(fso.GetDriveName(Application.Path))
          End If
      
          With Drv
              If .IsReady Then
                  DriveSerial = Abs(.SerialNumber)
              Else    '"Drive Not Ready!"
                  DriveSerial = -1
              End If
          End With
          
          'Clean up
          Set Drv = Nothing
          Set fso = Nothing
          
          GetDriveSerialNumber = DriveSerial
      End Function
 
Odgovor na temu

negative7
Ivan Raic

Član broj: 186110
Poruke: 151
*.CARNet.hr.



Profil

icon Re: Zastita prilikom otvaranja sheet-a02.06.2011. u 20:55 - pre 156 meseci
Pogresno ste me razumili,nije mi bitan seriski broj diska ni parametri,ali oboje valja svakako znat.

Nego kako je "on" omogucio da ga pita sifru prije ulaza u kod od vba
Kako bi ja na isti nacin kao on zastitio svoj vba kod,
Nema potrebe da probijam njegovu sifru,nego samo kako bi ja uradio isto to
 
Odgovor na temu

neptuncokg
Predrag M
racunovodja
Kragujevac

Član broj: 230353
Poruke: 326
*.dynamic.isp.telekom.rs.



+9 Profil

icon Re: Zastita prilikom otvaranja sheet-a02.06.2011. u 22:00 - pre 156 meseci
ALT+F11 / Tools / VBAProject Properties / Protection
 
Odgovor na temu

negative7
Ivan Raic

Član broj: 186110
Poruke: 151
*.CARNet.hr.



Profil

icon Re: Zastita prilikom otvaranja sheet-a03.06.2011. u 00:12 - pre 156 meseci
Hvala neptuncokg
 
Odgovor na temu

Ivek33

Član broj: 66174
Poruke: 2898



+66 Profil

icon Re: Zastita prilikom otvaranja sheet-a03.06.2011. u 08:02 - pre 156 meseci
Citat:
negative7: Kako bi ja na isti nacin kao on zastitio svoj vba kod,
Nema potrebe da probijam njegovu sifru,nego samo kako bi ja uradio isto to
A što ti to vrijedi ako se ista šifra može ukloniti?

Ovo je original kod u dotičnoj workbook za ispis serial number HDD (tek toliko da vidiš
Code:
Sub DajBroj()
    Dim fs, e, s
    Set fs = CreateObject("Scripting.FileSystemObject")
    Set e = fs.GetDrive(fs.GetDriveName(fs.GetAbsolutePathName("c:")))

    s = e.SerialNumber
    ActiveWorkbook.Worksheets(1).Cells(2, 2).Value = s
End Sub

 
Odgovor na temu

Brodoplovac
Beograd

Član broj: 171299
Poruke: 838
*.adsl.verat.net.



+166 Profil

icon Re: Zastita prilikom otvaranja sheet-a03.06.2011. u 08:46 - pre 156 meseci
Ivek, koji si program koristio za skidanje šifre?

Komercijalni add-oni za excel (npr. ASAP utilities) su napravljeni kao COM addoni. U njima je kod kompajliran pa ga je teško otkriti. COM add-oni se mogu napisati u VB.NET-u. Uz pomoć COM add-ina bi se mogla napraviti dobra zaštita za sheet.

 
Odgovor na temu

negative7
Ivan Raic

Član broj: 186110
Poruke: 151
*.CARNet.hr.



Profil

icon Re: Zastita prilikom otvaranja sheet-a03.06.2011. u 09:17 - pre 156 meseci
Citat:
Ivek33: A što ti to vrijedi ako se ista šifra može ukloniti?

Ovo je original kod u dotičnoj workbook za ispis serial number HDD (tek toliko da vidiš
Code:
Sub DajBroj()
    Dim fs, e, s
    Set fs = CreateObject("Scripting.FileSystemObject")
    Set e = fs.GetDrive(fs.GetDriveName(fs.GetAbsolutePathName("c:")))

    s = e.SerialNumber
    ActiveWorkbook.Worksheets(1).Cells(2, 2).Value = s
End Sub


E jbga sad,pa jel moguce ikako zastit svoj kod ivek?Ja kad procitam ovo sve sto si ti napisao na ovu temu meni izgleda kao da ti tvrdis da 100% zastita i ne postoji?
 
Odgovor na temu

Ivek33

Član broj: 66174
Poruke: 2898



+66 Profil

icon Re: Zastita prilikom otvaranja sheet-a03.06.2011. u 10:31 - pre 156 meseci
Citat:
Brodoplovac: Ivek, koji si program koristio za skidanje šifre?.
Hmmmm, ZNAO sam da će doći i ovo pitanje?
Nemoj me to pitati jer neću ti reći (ne samo tebi nego nikome) i to iz određenih razloga

1. Kršio bih pravila foruma a to ne želim
2. Kako bi tebi bilo da se baviš mukotrpnim programiranjem i zaštitiš Excel file da nitko ne zna i ne može pristupiti onome čemu ti ne želiš, a ja ovdje izbacim način kako se radi uklanjanje tvoje šifre. Mislim da ti ne bi bilo pravo, zar ne. (ovako bar mi je savjest čista
Nadam se da me sada razumiješ.

Citat:
pa jel moguce ikako zastit svoj kod ivek?Ja kad procitam ovo sve sto si ti napisao na ovu temu meni izgleda kao da ti tvrdis da 100% zastita i ne postoji?
Pa lijepo sam napisao u prethodnom postu, nema 100% zaštite. Čovjek napravi neku zaštitu pa drugi čovjek razbije tu zaštitu, zar ne?

Čuo sam za opciju zaštite preko *.DLL file ali nisam se susreo s time. No navodno to funkcionira tako da ti netko dođe sjedne za PC i kao fol postavi neki svoj programčić instalacije koji će instalirati taj DLL file (a da ti ne znaš). No ne znam što se događa ako ukloniš taj DLL file, hoće li funkcionirati Workbook?. No opet što ako ja pobrišem one dijelove makronaredbi koje čitaju taj DLL file ?
itd itd itd....
 
Odgovor na temu

[es] :: Office :: Excel :: Zastita prilikom otvaranja sheet-a

[ Pregleda: 3785 | Odgovora: 18 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.