Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
336to340
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
336to340
336to340
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Probleme mit Case Select

Probleme mit Case Select
12.11.2003 14:31:04
Valentino
Hallo allerseits
Ich habe wieder einmal ein Problem!!
Es geht um eine Datei im Netzwerk, die nur 3 User abspeichern dürfen.
Dafür habe ich den beigefügten Code erstellt.
Wenn der Benutzername "Hans" ist, klappt es. Bei den anderen zwei funktioniert es nicht.
Testhalber habe ich "Hans" mit "Susi" gewechselt.
---Case Is <> "Susi", "Hans", "Frank"---
Nun funktioniert der Code nicht mehr.
Zusammengefasst heißt das, sobald "Hans" die Datei speichern möchte und dieser steht an der 2. Stelle in der Syntax, gibt es eine Fehlermeldung.
Woran liegt das oder was mache ich verkehrt?
Gibt es evtl. eine andere Möglichkeit, mein Vorhaben zu realisieren?

Für eure Hilfe wäre ich sehr dankbar.



Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Select Case Application.UserName
Case Is <> "Hans", "Susi", "Frank"
Cancel = True
MsgBox "Die Datei kann nicht gespeichert werden", vbCritical + vbOKOnly, "Warnung"
End Select
End Sub


Gruß
Valentino

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Probleme mit Case Select
12.11.2003 14:55:30
golem
Hallo,
Braucht man dazu nicht eine Inputbox oder so in der der Name eingegeben werden muss ?
gruß Goli
AW: Probleme mit Case Select
12.11.2003 14:57:25
xXx
Hallo,
Application.Username ist eigentlich nicht geeignet, da sich den jeder ändern kann.
Als Weiteres würde ich die Abfrage drehen:
Case "Hans","Susi","Frank"
activeworkbook.save
case else
msgbox "Kann nicht speichern!"
cancel=true
End select

Gruß aus'm Pott
Udo
http://www.excelerator.de

P.S. Das Forum lebt auch von den Rückmeldungen der Frager an die Antworter!
Anzeige
Super, es läuft habe es getestet o.T.
12.11.2003 15:21:53
golem
AW: Probleme mit Case Select
12.11.2003 15:39:59
Valentino
Danke für die schnelle Hilfe!!

Das mit der Sicherheit über den Benutzername war mir bekannt.
Der Tips langt mir. Da das Makro geschützt ist, kann der jenige nicht einsehen, welche Benutzername abgefragt werden. Notfalls kann ich die Benutzernamen nach belieben ändern.
Aber mit "Computername" war das irgendwie nicht machbar.

Danke nochmals!!
Gruß
Valentino
Username
12.11.2003 15:59:28
xXx
Hallo,
so kriegst du den Anmeldenamen:

Declare

Function GetUserName Lib "advapi32.dll" _
Alias "GetUserNameA" (ByVal lpBuffer As String, _
nSize As Long) As Long

Function UserName()
Dim Buffer As String * 100
Dim BuffLen As Long
BuffLen = 100
GetUserName Buffer, BuffLen
UserName = Left(Buffer, BuffLen)
UserName = Left(UserName, InStr(UserName, Chr(0)) - 1)
End Function


Dein Code geht dann so:
Select Case UserName

Gruß
Udo

P.S.Das Declare gehört unmittelbar vor das Function. Wird nicht richtig dargestellt.
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige