Keresés

Részletes keresés

L-Gee Creative Commons License 2001.05.09 0 0 240
Tiba,

köszi, végül én is így oldottam meg, igaz, hogy csak a szimpla hidden+paszvörddel, de a veryhidden lehet, hogy jobb lenne...

Előzmény: Tiba (239)
Tiba Creative Commons License 2001.05.09 0 0 239
A loggoláshoz kell kötni a munkafüzet és a munkalap védelmének feloldását. Pl: az
autoopen-ben kell Visible-re állítani a munkalapot, majd a munkafüzet felépítését védeni, autoclose-ben pedig VeryHidden-re állítani és a védelmet beállítani.

Tiba

Előzmény: L-Gee (237)
Tomathos Creative Commons License 2001.05.09 0 0 238
Hello!

Lenne egy problémám egy nyomógombal szeretném a Chart Wizard-ot előcsalni, de eddig még nem jött össze.

Pl: A nyomtatás így működik:
Sub Nyomtat()
Application.Dialogs(xlDialogPrint).Show
End Sub

Sajnos az xlChartWizard-al nem jó.

Van valakinek valamilyen ötlete?

Üdv

Tomathos

L-Gee Creative Commons License 2001.05.07 0 0 237
LordFinesse,

Mondjuk nálam az a szerencse, hogy nincsenek ilyen kis trükkös felhasználók, akiknek fő céljuk, hogy megkerüljék az általam megírt kis algoritmust :-) Én egyszerűen csak azt szeretném tudni, hogy kik matatnak épp a táblázatban, illetve ki-mit csinált vele megelőzően.

Előzmény: LordFinesse (235)
LordFinesse Creative Commons License 2001.05.07 0 0 236
Bár az az érzésem, hogy ezt VBA-val csak körülményesem lehet csak, ha egyáltalán lehet. Esetleg VB Scripttel, hogy a Windows loggolja????
LordFinesse Creative Commons License 2001.05.07 0 0 235
Sőt még az is probléma, hogy a Workbook_Open() sub-ot ki lehet kerülni, ha a file megnyitásakor a SHIFT-et lenyomva tartod.

Én is dolgozom a probléma megoldásán.
Szóval hogyan lehet megkerülhetetlenül loggolni egy adott file nyitását, zárását?????

Előzmény: L-Gee (234)
L-Gee Creative Commons License 2001.05.07 0 0 234
joy,

azért lemásolom ide az én megoldásomat:

Én úgy csináltam, hogy szimplán meghívom a függvényt a
Workbook_Open()-ből, vagy a BeforeClose, BeforeSave-ből a megfelelő paraméterrel

pl.: Logging("OPEN")

______________________________________________
Function Logging(Activity As String)

Dim Felhasznalo As String
Const LogFile = "M:\Posta\Orders\logfile.txt"

On Error GoTo HIBA

SetAttr LogFile, vbNormal
Open LogFile For Append As #1
Felhasznalo = Environ("USERNAME")

Print #1, Felhasznalo; Tab(2); Activity; Tab(2); Now(); Tab(2); "--------------------------------------"
Close #1
SetAttr LogFile, vbHidden + vbReadOnly + vbSystem

On Error GoTo 0
Exit Function

HIBA:
'Ide jön majd a hibakezelés, ha lesz türelmem
End Function
____________________________________

Az egyetlen probléma, ha a valakinek be van kapcsolva a Macro virus protection, akkor megnyitáskor rákérdez, hogy használni akarom-e a makrókat. Ha azt mondom, hogy nem, akkor nem loggol semmit. Ezért úgy csináltam meg, hogy eleve elhájdoltam a síteket pászvörddel, és megnyitáskor egy makro hívja elő őket. Namármost, ha kikapcsolja az elején a makrókat, akkor eleve rejtve maradnak az oldalak és nem tudja használni a file-t.
Mondjuk nem mondom, hogy tetszik a megoldás, de legalább működik.

Ha valakinek van más ötlete arra, hogy hogyan lehet megakadályozni, hogy ki lehessen kapcsolni a makrókat, ne titkolja előlem ! :)

Előzmény: joy (228)
joy Creative Commons License 2001.05.06 0 0 233
Fölvettem a kedvencekbe!
Előzmény: LordFinesse (231)
joy Creative Commons License 2001.05.06 0 0 232
HUH!
Mire ezt megtanulom letelik a műszakom!
:o)
Köszike!
Előzmény: LordFinesse (231)
LordFinesse Creative Commons License 2001.05.06 0 0 231
Az elözöhöz:

Ahol a munkafüzet van, abban a könyvtárban fog létrehozni egy logfile-t, és loggolja a User-name-t, a computer-name-t és a megnyitás és bezárás idejét.

Előzmény: LordFinesse (230)
LordFinesse Creative Commons License 2001.05.06 0 0 230
Public Declare Function GetUserName Lib "advapi32.dll" Alias "GetUserNameA"
_
(ByVal lpBuffer As String, nSize As Long) As Long
Public Declare Function GetComputerName Lib "kernel32" Alias
"GetComputerNameA" _
(ByVal lpBuffer As String, nSize As Long) As Long

Sub Auto_Open()
Dim FNum As Integer
Dim UL As Long
Dim UName As String
Dim CL As Long
Dim CName As String

FNum = FreeFile

Open ThisWorkbook.Path & "\log.txt" For Append As #FNum
UName = String$(255, 0)
UL = 255
CName = String$(255, 0)
CL = 255
GetUserName UName, UL
GetComputerName CName, CL

Print #FNum, ThisWorkbook.FullName & " OPENED at " & _
Format(Now, "dd-mmm-yyyy hh:mm:ss") & " by user: " & _
Left(UName, UL) & " from computer: " & Left(CName, CL)
Close #FNum
End Sub

Sub Auto_Close()
Dim FNum As Integer
Dim UL As Long
Dim UName As String
Dim CL As Long
Dim CName As String

FNum = FreeFile

Open ThisWorkbook.Path & "\log.txt" For Append As #FNum
UName = String$(255, 0)
UL = 255
CName = String$(255, 0)
CL = 255
GetUserName UName, UL
GetComputerName CName, CL

Print #FNum, ThisWorkbook.FullName & " CLOSED at " & _
Format(Now, "dd-mmm-yyyy hh:mm:ss") & " by user: " & _
Left(UName, UL) & " from computer: " & Left(CName, CL)
Close #FNum

End Sub

Ez a megoldás nem tölem származik, egy excel newsgroupból vettem. A szerzöje Chip Pearson. http://www.cpearson.com/

Előzmény: joy (228)
joy Creative Commons License 2001.05.06 0 0 229
ChDir "C:\Mappa\Mappika"
ActiveWorkbook.SaveAs Filename:="C:\Mappa\Mappika\File.xls", FileFormat _
:=xlExcel5, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=True
ChDir "T:\Mappika"
ActiveWorkbook.SaveAs Filename:="T:\Mappika\File.xls", FileFormat _
:=xlExcel5, Password:="", WriteResPassword:="", _
ReadOnlyRecommended:=False, CreateBackup:=True
ActiveWorkbook.Close

Ez volt az eredeti
Miután kicseréltem a FileFormat-ot xlNormal-ra megszünt a jelenség!

Azután már a VBA makróvédelemmel le lehetett tiltani a szerkesztését!

Köszi a beszélgetést, elvezetett a megoldáshoz!

Előzmény: Tiba (224)
joy Creative Commons License 2001.05.06 0 0 228
Ha elküldenél egy használható példát a (221)-ben leírt megoldásra a >>vbeci@freemail.hu<<-ra megköszönném!
Nekem is az a gond, hogy olyanok kotornak a file-ben, akiknek semmi keresni valója ott, csak bámészok, azután elfeledik bezárni...
Legalább azt tudnám, ki-mikor nyitotta meg, már nagy haszon lenne!
Előre is köszi!
Előzmény: L-Gee (227)
L-Gee Creative Commons License 2001.05.04 0 0 227
igazi hős

köszi ! már ki is próbáltam ! ez az ENVIRON függvény tökéletesen megfelel a célnak ! az USERNAME paraméter nagyon jó, de találtam még egy NWUSERNAME nevű környezeti változót is ami nem más, mint a NetWare username.

Mégegyszer 1000 hála és köszönet.

L-Gee

Előzmény: igazi hős (226)
igazi hős Creative Commons License 2001.05.04 0 0 226
Environ függvény USERNAME paraméterrel működik, legalábbis NT alatt, mivel az NT beállítja a USERNAME környezeti változót. Novell login nem tudom tesz-e ilyesmit.
Nem értem: az excel file megnyitási idejét akarod naplózni, vagy a user belépésének az idejét. Az első egyszerű, a másodikra nem tudok (rendszer dll hívást nélkülöző) megoldást.
Előzmény: L-Gee (225)
L-Gee Creative Commons License 2001.05.03 0 0 225
Urak !

VBA-ban le lehet kérdezni valahogy az NT-be, vagy novell-be bejelentkezett felhasználó user-nevét ?

Egy kis VBA makróval szeretném loggolni, hogy egy hálózaton lévő excel file-t ki és mikor nyitott meg. Tehát minden egyes filemegnyitáskor egy másik excel fájlba keletkezik egy új rekord, mely a felhasználó nevét és a belépés idejét tartalmazza.

(Novell rendszer-adminisztrátori eszközök elvetve, csak VBA jöhet szóba)

Tiba Creative Commons License 2001.05.02 0 0 224
Két megoldás kínálkozik:

A makrofejet, amit a szerkesztő készít (gondolom, a szerkesztő ebből a szempontból felhasználót jelent), valamelyik cellába kell elhelyezni, majd azt programként használni. Ezzel egyidejűleg a projektet jelszóval levédeni, így nem kiolvasható a jelszó. Sajnos ez nem nyújt elegendő védelmet, mert egy fájlkezelővel simán rá lehet keresni a fájlban található "unprotect" szóra, és akkor máris megvan a jelszó.

Ez ellen a (nem a legtiszteségesebb, de működő) megoldás az, hogy egy levédett munkalapon 2-3 cellában kell tárolni a jelszó részeit, majd az a VBA-ban változóként deklarálni pl így

Jelszo=thisworkbook.worksheets(1).cells(1,1)& thisworkbook.worksheets(1).cells(1,2)& thisworkbook.worksheets(1).cells(1,3)

Ezután a jelszóvédelem feloldása:

.unprotect password:=Jelszo

"Ha letiltom a mentésnél kiakad, mert valami a !makrófej elé minden mentésnél 1-1 üres sort szúr be, de nem indokolja semmilyen utasítás!"

Ezt továbbra sem értem.

Tiba

Előzmény: joy (223)
joy Creative Commons License 2001.04.28 0 0 223
:o)
A makrofej a lap teteje, amit a szerkesztő maga készít...

Mert benne vannak az excel füzet, és lapvédelmi jelszavai.

Nem küldhetem, megvette a cég, az ő tulajdona.

Előzmény: Tiba (222)
Tiba Creative Commons License 2001.04.28 0 0 222
Mi az a !makrófej?

Ha a makró a védelemről szól, akkor a makró segítségével hogy lehet felnyitni a füzetvédelmet?

A forrás mennyire hosszú? el tudod küldeni?

Tiba

Előzmény: joy (221)
joy Creative Commons License 2001.04.26 0 0 221
Segítség!
Van egy excel munkafüzetem beépített makróval, amely levédi, és nyomógombbal sajátgépre, és hálózatra menti, de a makrót nem tudom letiltani, és így időnként fölnyitogatják a füzetvédelmet!
Ha letiltom a mentésnél kiakad, mert valami a !makrófej elé minden mentésnél 1-1 üres sort szúr be, de nem indokolja semmilyen utasítás!
A 95-ös formátumban ez nem volt meg, csak a 97-esben van!
LordFinesse Creative Commons License 2001.04.26 0 0 220
Ezzel csak az a baj, hogyha biztosra akarsz menni, hogy a felhasználó ne tudjon az adott scroll-tartományon túlmenni (pl. érzekeny vagy titkos adatok vannak azokban a cellákban), akkor le kell tiltani a VBA ablak megnyitását is. De a scroll-areát ki lehet kapcsolni a Nézet>Eszköztárak>Kontrol eszköztáraknál is.
Előzmény: L-Gee (219)
L-Gee Creative Commons License 2001.04.26 0 0 219

francba, a relációjeleket használtam és nem jelent meg az = jel után semmi.

Worksheets("Sheet1").ScrollArea = scroll range

Előzmény: L-Gee (218)
L-Gee Creative Commons License 2001.04.26 0 0 218
Rájöttem közben:

Worksheets("Sheet1").ScrollArea =

Előzmény: L-Gee (217)
L-Gee Creative Commons License 2001.04.26 0 0 217
Urak !

Segítsetek nekem légyszíves, egy excel sheet scrollozhatóságát kellene korlátoznom, tehát, hogy egy bizonyos határon túl ne lehessen továbbgörgetni, illetve a határon túl levő cellákat ne lehessen kijelölni sem. Tudom, hogy VBA-ban a Workbook Open-hez kell beírni, régen tudtam is az utasítást, de akárhogy töröm a fejem, nem jut eszembe és a helpben sem találom.

Előre is köszi,

üdv.: L-Gee

LordFinesse Creative Commons License 2001.04.23 0 0 216
LG>>> nem igaz, hogy még nem tudtad kiszedni a jelszót!!! :-)))))))

Ezen a címen >> http://www.fileguru.com/security/security.asp találsz vagy 5 olyan programot ami képes kiszedni a jelszót. Bár a többség, vagy az összes shareware, de ha nem akarsz fizetni, akkor a http://www.astalavista.box.sk/ címen keress rá törést!!

Előzmény: L-Gee (215)
L-Gee Creative Commons License 2001.04.23 0 0 215
bendeli,

köszi, ez tök rendes dolog tőled, csak hát.... khmmmm... szigorúan bizalmas anyag, így nem küldhetem el :(
Ezt a szívást...
Azért a felajánlást mégegyszer köszönöm.

L-Gee

Előzmény: bendeli (214)
bendeli Creative Commons License 2001.04.23 0 0 214
Mindjárt gondoltam. :) Ha viszont elküldöd nekem a fájlt, akkor visszaküldöm jelszavak nélkül. :) (Sajnos a freemailes címemhez nem tudok hozzáférni, úgyhogy javaslom a deli_ben@hotmail.com címet.)
Előzmény: L-Gee (213)
L-Gee Creative Commons License 2001.04.23 0 0 213
:-)
Előzmény: bendeli (212)
bendeli Creative Commons License 2001.04.20 0 0 212
próbáltad már regisztrálni? :D
Előzmény: L-Gee (211)
L-Gee Creative Commons License 2001.04.20 0 0 211
Urak !

Ez az advanced excel password recovery program így alapban (ingyenes verzió) annyira le van korlátozva, hogy nem tudom használni.

Tipp ? Sheet protect jelszavat kéne kiderítenem.

Ha kedveled azért, ha nem azért nyomj egy lájkot a Fórumért!