Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1296to1300
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
Inhaltsverzeichnis

Code verdoppeln

Code verdoppeln
14.02.2013 13:08:49
Mirko
Hallo zusammen,
kann jemand helfen, ich möchte das nicht nur die "Tabelle2" sondern auch die "Tabelle3" von der Passwortabfrage verschont bleibt.
Private Sub CommandButton1_Click()
Dim ws As Worksheet, PW$
PW = InputBox("Bitte das Passwort eingeben!", "PASSWORT")
If PW = "" Then Exit Sub
For Each ws In ThisWorkbook.Worksheets
If ws.Name  "Tabelle2" Then
If ws.ProtectContents = True Then
ws.Unprotect PW
Else
ws.Protect PW
End If
End If
Next ws
End Sub

weiterhin sollte dies bei diesem Code auch die Tabelle3 eingebunden werden, d.h. es soll in Tabelle2 und in Tabelle3 der username abgefragt werden.
Private Sub Workbook_Open()
Tabelle2.Cells(2, 1).Value = Environ("username")
'Dim Buffer As String * 100
'Dim BuffLen As Long
'    BuffLen = 100
'    GetUserName Buffer, BuffLen
'    Worksheets("userdaten").Range("R1").Value = Left(Buffer, BuffLen - 1)
Worksheets("Tabelle2").Range("R1").Value = Environ("username")
end if
End Sub

Danke und Gruß Mirko

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Code verdoppeln
14.02.2013 13:15:54
Rudi
Hallo,
1. If ws.Name "Tabelle2" And ws.Name "Tabelle3" Then
2. Dann mach's doch einfach.
Worksheets("Tabelle3").Range("R1").Value = Environ("username")
Gruß
Rudi

AW: Code verdoppeln
14.02.2013 14:06:21
Mirko
Hallo Rudi,
ich habe folgenden Code in "DieseArbeitsmappe"
Private Sub Workbook_Open()
Tabelle2.Cells(2, 1).Value = Environ("username")
Tabelle3.Cells(2, 1).Value = Environ("username")
Worksheets("Tabelle2").Range("R1").Value = Environ("username")
Worksheets("Tabelle3").Range("R1").Value = Environ("username")
If Worksheets("Tabelle2").Range("R1").Value  "pfoh02" _
And Worksheets("Tabelle2").Range("R1").Value  "musik01" _
And Worksheets("Tabelle2").Range("R1").Value  "jendr02" _
And Worksheets("Tabelle2").Range("R1").Value  "" _
And Worksheets("Tabelle3").Range("R1").Value  "pfoh02" _
And Worksheets("Tabelle3").Range("R1").Value  "musik01" _
And Worksheets("Tabelle3").Range("R1").Value  "jendr02" _
And Worksheets("Tabelle3").Range("R1").Value  "" Then
ActiveWindow.DisplayWorkbookTabs = False
ActiveWindow.DisplayHorizontalScrollBar = False
End If
End If
End Sub

aber irgendwie funktioniert dies nicht -- kannst du mal schauen warum nicht.
DANKE und Gruß Mirko

Anzeige
AW: Code verdoppeln
14.02.2013 13:20:04
Michael
Hallo Mirko,
bau doch einfach eine CASE Anweisung mit rein:

Private Sub CommandButton1_Click()
Dim ws As Worksheet, PW$
PW = InputBox("Bitte das Passwort eingeben!", "PASSWORT")
If PW = "" Then Exit Sub
For Each ws In ThisWorkbook.Worksheets
Select Case ws
Case 2,3     'Tue hier nix !
Case Else
If ws.ProtectContents = True Then
ws.Unprotect PW
Else
ws.Protect PW
End If
End Select
Next ws
End Sub
... den zweiten Teil Deiner Frage habe ich leider nicht verstanden :-(
Gruß,
Michael :-)

vollkommen falsch!
14.02.2013 13:32:28
Rudi
Hallo,
das geht so nicht!
        For Each ws In ThisWorkbook.Worksheets
Select Case ws
Case 2,3     'Tue hier nix !

ws ist ein Object. Wenn mit Select Case, dann so:
        For Each ws In ThisWorkbook.Worksheets
Select Case ws.Name
Case "Tabelle2", "Tabelle3"
Gruß
Rudi

Anzeige
AW: vollkommen falsch!
14.02.2013 14:08:16
Michael
´tschuldigung !
hatte ich schnell zusammengeklebt ohne zu testen. Du hast natürlich recht.
aber es müsste doch auch mit dem Index gehen oder:

For Each ws In ThisWorkbook.Worksheets
Select Case ws.index
Case 2,3     'Tue hier nix !

Ich finde die CASE Anweisung einfach schöner als verschachtelte if ... and ... and ...
Gruß,
Michael :-)

AW: vollkommen falsch!
14.02.2013 14:28:17
Rudi
Hallo,
Ich finde die CASE Anweisung einfach schöner als verschachtelte if ... and ... and ...
da sind wir einer Meinung.
Index: Prinzipiell ja. Aber wer garantiert, dass Tabelle2 wirklich das 2. Blatt ist?
Gruß
Rudi

Anzeige
AW: vollkommen falsch!
14.02.2013 14:54:48
Mirko
Hallo zusammen,
das Problem mit dem Passwort ist dank euch erledigt. DANKE
aber das Problem mit dem username habe ich noch.
es soll in Tabelle 2 sowie in Tabelle 3 der username ausgelesen werden.
In Tabelle 2 funktioniert dies auch problemlos aber in Tabelle 3 noch nicht :(
folgenden Code habe ich in "DieseArbeitsmappe"
wobei nur die Personen mit den Kürzeln diese Tabelle sehen und bearbeiten dürfen - dies könnte man aber auch weglassen.
Private Sub Workbook_Open()
Tabelle2.Cells(2, 1).Value = Environ("username")
Tabelle3.Cells(2, 1).Value = Environ("username")
Worksheets("Tabelle2").Range("R1").Value = Environ("username")
Worksheets("Tabelle3").Range("R1").Value = Environ("username")
If Worksheets("Tabelle2").Range("R1").Value  "name1" _
And Worksheets("Tabelle2").Range("R1").Value  "name2" _
And Worksheets("Tabelle2").Range("R1").Value  "name3" _
And Worksheets("Tabelle2").Range("R1").Value  "" _
And Worksheets("Tabelle3").Range("R1").Value  "name1" _
And Worksheets("Tabelle3").Range("R1").Value  "name2" _
And Worksheets("Tabelle3").Range("R1").Value  "name3" _
And Worksheets("Tabelle3").Range("R1").Value  "" Then
ActiveWindow.DisplayWorkbookTabs = False
ActiveWindow.DisplayHorizontalScrollBar = False
End If
End If
End Sub
Danke und Gruß Mirko

Anzeige
Nachfrage
14.02.2013 23:42:27
Rudi
Hallo,
ich verstehe nicht, was du willst.
Was soll das verhindern?
   ActiveWindow.DisplayWorkbookTabs = False

Man kann doch noch immer mit strg+Bildauf/ Bildab zwischen den Tabellen wechseln.
Außerdem gibt's hier massenhaft Beiträge zu Berechtigungen für Tabellen.
Gruß
Rudi

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige