Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Excel VBA

Forumthread: Excel VBA

Excel VBA
25.06.2024 10:26:31
Bruno
Hallo Zusammen

Ich habe ein Problem, bei welchem ich nicht weiter komme. Wir haben einen Arbeitsplan, welcher von 2 Personen bearbeitet wird (geschütztes eigenes Laufwerk). Beim speichern wird zusätzlich eine Kopie auf ein öffentliches Laufwek geschrieben. Da aber ab und zu jemand die Datei dauerhaft geöffnet hat, schlägt die Speicherung fehl. Darum habe ich den Code erweitert, dass darauf hingewiesen wird, dass die Datei schreibgeschützt geöffnet werden soll.

Dies klappt leider aber auch nicht bei allen Mitarbeitern.

Gibt es eine Möglichkeit, bei der Kopie, das Popupfenster "Dem Autor wäre es lieber... Ja/Nein/Abbrechen" direkt mit Ja zu übersteuern, dass nur die Kopie direkt mit Schreibschutz geöffnet wird?


Mein Code:
Private Sub Workbook_AfterSave(ByVal Success As Boolean)
'Makros Ausschalten
Application.EnableEvents = False
Application.DisplayAlerts = False
'Speichern auf Share mit ReadOnly Empfehlung
ActiveWorkbook.SaveAs Filename:="\\\\Pfadangabe\01.01_Einsatzplan\" + ActiveWorkbook.Name, ReadOnlyRecommended:=True
'Fehlermeldungen Einschalten
Application.DisplayAlerts = True
'Makros Einschalten
Application.EnableEvents = True
ActiveWorkbook.Close SaveChanges:=True

End Sub
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel VBA
25.06.2024 11:35:50
Kuwer
Hallo Bruno,

vielleicht so:
'Speichern auf Share mit ReadOnly Empfehlung

ActiveWorkbook.SaveAs Filename:="\\\\Pfadangabe\01.01_Einsatzplan\" & ActiveWorkbook.Name, ReadOnlyRecommended:=True
SetAttr "\\\\Pfadangabe\01.01_Einsatzplan\" & ActiveWorkbook.Name, vbReadOnly
Gruß, Uwe
Anzeige
AW: Excel VBA
25.06.2024 12:52:35
Bruno
Hallo Kuwer

Leider kriege ich da

Laufzeitfehler '53'
Datei nicht gefunden

Ich nehme an, dass dies ist,weil die Datei vorher gerade Beschrieben wurde und eventuell noch geöffnet ist
AW: Excel VBA
25.06.2024 12:43:22
volti
Hallo Bruno,

Gibt es eine Möglichkeit, bei der Kopie, das Popupfenster "Dem Autor wäre es lieber... Ja/Nein/Abbrechen" direkt mit Ja zu übersteuern, dass nur die Kopie direkt mit Schreibschutz geöffnet wird?

PopUps und Dialogboxen kann man oft automatisch beantworten lassen. Hierzu ist aber ein kleiner API-Aufwand erforderlich.

Hier ein Beispiel:
https://www.clever-excel-forum.de/Thread-Button-in-Dialogbox-automatisch-anklicken

Gruß Karl-Heinz
Anzeige
AW: Excel VBA
25.06.2024 13:13:54
Onur
DAS in "Workbook_Open" im Modul der Arbeitsmappe:
ThisWorkbook.ChangeFileAccess xlReadOnly


AW: Excel VBA
25.06.2024 15:21:10
Bruno
Habe dies jetzt ein bisschen ander gelöst, durch die verschiedenen Lösungsansätze, die ich gekriegt habe. Danke Euch allen :-)

Private Sub Workbook_Open()

'MsgBox "Current user is " & (Environ("UserName"))
Select Case LCase(Environ("UserName")) 'Netzwerk-Name
Case "name 1", "name2" , "name3" 'Diese User können Änderungen vornehmen
'MsgBox "Bearbeitbar"
Case Else
'MsgBox "Schreibgeschützt"
If Not ActiveWorkbook.ReadOnly Then
ActiveWorkbook.ChangeFileAccess xlReadOnly
End If
End Select
End Sub


Private Sub Workbook_AfterSave(ByVal Success As Boolean)

'Makros Ausschalten
Application.EnableEvents = False
Application.DisplayAlerts = False
'Speichern auf Share
ActiveWorkbook.SaveAs Filename:="\\\\Pfad\01.01_Einsatzplan\" + ActiveWorkbook.Name
'Fehlermeldungen Einschalten
Application.DisplayAlerts = True
'Makros Einschalten
Application.EnableEvents = True
ActiveWorkbook.Close SaveChanges:=True

End Sub
Anzeige
AW: Excel VBA
25.06.2024 13:02:15
Bruno
Danke Volti

Aber wie muss ich das anstellen, dass nur bei der Kopie mit Ja beantwortet wird?
Kann ich dies auch über den Benutzer machen?
AW: Excel VBA
25.06.2024 13:30:05
volti
Hallo Bruno,

erstmal Onurs Tipp ausprobieren....
Nur wenn Du gar nicht zum Ziel kommst, kann man es über automatische Antwort versuchen. Das braucht aber etwas Zeit und KnowHow.

Ich wollte in erster Linie Deine Frage beantworten und aufzeigen, dass vieles geht bei der Programmierung. Nach dem Motto: Geht nicht, gibt's nicht. :-)
Gruß
Karl-Heinz
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige