Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Automatischer Eintrag in DieseArbeitsmappe

Frage Microsoft Microsoft Office

Mitglied: xaumichi

xaumichi (Level 1) - Jetzt verbinden

08.08.2010 um 01:30 Uhr, 4039 Aufrufe, 4 Kommentare

Abend!

Also kurz meine Situation:

Wird in einem Excel-File ein Button betätigt, kommt ein kleines Anmeldeformular für einen neuen "Mitarbeiter".
Wenn alle Felder ausgefüllt sind und bestätigt wird, wird automatisch ein neues Tabellenblatt angelegt und mit einem Passwort gesichert. (manche Zellen halt, mit Formeln usw.)
Da in diesem ganzen Tabellenblatt Makros "arbeiten" muss ja unter "DieseArbeitsmappe" eine Vermerkt gemacht werden:

01.
ThisWorkbook.Worksheets("NeuerMitarbeiter1").Protect Password:="Passwort", UserInterFaceOnly:=True
Wie schaffe ich es, dass nun, wenn das Anmeldeformular bestätigt wird, automatisch dieser Eintrag unter "DieseArbeitsmappe", mit dem Richtigen Arbeitsblattnamen hinzugefüght wird?

Info:
-) das Passwort ist für jedes Blatt gleich
-) es gibt ein Tabellenblatt "Mitarbeiter", in dem alle Mitarbeiter aufgelistet sind (under Spalte A) und jedes neu erstellt TB hat als Tabellenblattnamen seinen richtigen Namen, sprich einen Wert aus Spalte A vom Tabellenlatt "Mitarbeiter"


Wär toll, wenn mir hierbei wer helfen könnt!

LG Mike
Mitglied: 76109
08.08.2010 um 08:57 Uhr
Hallo xaumichi!

Und warum schreibst Du nicht gleich beim Erstellen des neuen Tabellenblatts (AktiveSheet) die Codezeile mit rein?
ActiveSheet.Protect Password:="Passwort", UserInterFaceOnly:=True

Gruß Dieter
Bitte warten ..
Mitglied: xaumichi
08.08.2010 um 11:13 Uhr
Hm...wie kann ich das machen, dass diese Zeile dann unter "DieseArbeitsmappe" und auch unter "Open"-Ereignis steht??
Denn sonst bringt es ja nichts, oder?!

Bzw. wie könnte ich diese Zeile dann löschen, wenn der jeweilige Mitarbeiter gelöscht wird?

LG Mike
Bitte warten ..
Mitglied: 76109
08.08.2010 um 12:44 Uhr
Hallo xaumichi!

Was hat der Schutz setzen/aufheben in dem Open-Erreignis verloren?

Natürlich kann man jetzt einen mords Code schreiben, der auch noch automatisiert VBA-Code einfügt, aber das ist mit einem riesen Aufwand verbunden und völlig unnötig.

Die normale Vorgehensweise wäre:
Neues Tabellenblatt erstellen, initialisieren und Blattschutz einmalig setzen.
Beim internen Bearbeiten der jeweiligen Mitarbeiterblätter vor einer Änderung explizit den Blattschutz aufheben und nach der Änderung sofort wieder setzen.

z.B. Diesen Code in ein Modul einfügen (= In Arbeitsmappe dann Public):
01.
Sub WksProtect(ByRef Wks)   'Tabellenblatt-Schutz aktivieren 
02.
    Wks.Protect Password:="Passwort",  UserInterFaceOnly:=True 
03.
End Sub 
04.
 
05.
Sub WksUnprotect(ByRef Wks)   'Tabellenblatt-Schutz deaktivieren 
06.
    Wks.Unprotect Password:="Passwort" 
07.
End Sub
Bei einer Änderung dann z.B.:
01.
Call WksUnprotect(Sheets("Mitarbeiter")) 
02.
'Änderungscode ausführen 
03.
Call WksProtect(Sheets("Mitarbeiter"))
Und wenn Dir das nicht sinnvoll erscheint und Du tatsächlich sowas machen willst, dann mach es über eine Each-Schleife:
01.
For Each Wks In ThisWorkbook.Worksheets 
02.
    If Wks.Range("XY") = "Einheitliches Merkmal eines Mitarbeiter-Tabellenblatts" Then  
03.
        Wks.Protect Password:="Passwort", UserInterFaceOnly:=True  
04.
    End If 
05.
Next
Gruß Dieter
Bitte warten ..
Mitglied: xaumichi
24.08.2010 um 14:51 Uhr
Okey!
Hab beide Möglichkeiten versucht und haben beide toll geklappt!
Danke schön!

Lg Mike
Bitte warten ..
Ähnliche Inhalte
Windows Server
gelöst GPO-Eintrag für OneNote-Drucker (3)

Frage von Ravelux zum Thema Windows Server ...

Erkennung und -Abwehr
Automatischer Zugriff auf Geräte und Maschinen via Team Viewer von außen (6)

Frage von xpstress zum Thema Erkennung und -Abwehr ...

VB for Applications
Suche mittels Eintrag in Listbox und einer gewählten Checkbox (2)

Frage von aivilon zum Thema VB for Applications ...

Neue Wissensbeiträge
Sicherheits-Tools

Sicherheitstest von Passwörtern für ganze DB-Tabellen

(1)

Tipp von gdconsult zum Thema Sicherheits-Tools ...

Peripheriegeräte

Was beachten bei der Wahl einer USV Anlage im Serverschrank

(9)

Tipp von zetboxit zum Thema Peripheriegeräte ...

Windows 10

Das Windows 10 Creators Update ist auf dem Weg

(6)

Anleitung von BassFishFox zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Batch & Shell
gelöst ZIP-Archive nach Dateien durchsuchen und Pfade ausgeben (33)

Frage von evinben zum Thema Batch & Shell ...

Exchange Server
Exchange 2016 Standard Server 2012 R2 Hetzner Mail (30)

Frage von Datsspeed zum Thema Exchange Server ...

Router & Routing
Routingproblem in Homerouter-Kaskade mit Raspi (22)

Frage von Oldschool zum Thema Router & Routing ...

Verschlüsselung & Zertifikate
Mit Veracrypt eine zweite interne (non-system) Festplatte verschlüsseln (10)

Frage von Bernulf zum Thema Verschlüsselung & Zertifikate ...