Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1844to1848
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

Spiegelung einer Datei

Spiegelung einer Datei
19.08.2021 18:44:58
Tobias
Guten Abend liebe Community,
ich stehe aktuell vor einer großen Herausforderung und bräuchte mal eure Hilfe.
Ich arbeite in einer Produktionsfirma und habe eine Art Logbuch für unsere Prudukte erstellt (für jedes Produkt eine Excel-Datei) wo jeder Mitarbeiter einträgt was er wann getan oder geändert hat.
Zudem sind alle Datein mit einer Backupdatei.xlsx verbunden. Dort werden in jeder Zeile diese eingegebenen Änderungen dann als Verlauf ,bei jeder Eintragung vom Mitarbeiter im Hintergrund per Makro eingetragen. Diese Datei ist aber Passwort geschützt und schreibgeschützt damit niemand dort was drin ändern kann.
Jetzt kommt Ihr ins Spiel. :)
Gibt es ein Makro wo ich meine Backupdatei.xlsx spiegeln kann? Quasi als separate Datei die sich beim öffnen mit meiner Urdatei (oder besser gleich bei der Eintragung in die Urdatei) jedes Mal synchronisiert bzw. komplett gleich ist? Zudem soll aber kein Laufzeiten Fehler auftreten wenn diese Datei geöffnet ist und ein Mitarbeiter aber eine Eintragung vornimmt. Die gespiegelte Datei soll zudem nur einen Schreibschutz besitzen.
Ich hoffe ich habe es verständlich erklärt und ihr könnt mir dabei helfen. :)

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

Betreff
Datum
Anwender
Anzeige
AW: Spiegelung einer Datei
19.08.2021 19:57:08
onur
Habe ich richtig verstanden ? Du willst also, dass die von dir gemachten Änderungen nicht protokolliert werden? Weiß denn dein Chef davon?
AW: Spiegelung einer Datei
19.08.2021 21:10:55
Tobias
Nein ! Folgendes Makro wird ausgeführt wenn jeder MA. etwas in eine x beliebige Datei einträgt:

Sub Backup()
Application.ScreenUpdating = False
Dim Pfad As String
Dim urdatei
Set urdatei = ThisWorkbook
Dim Artikel As String
Dim Artikelnr As String
Dim Zeichnungsnummer As String
Dim Maschine As String
Dim xxx As String
Dim Bearbeitung As String
Dim Datum As String
Datum = ActiveSheet.Range("A19")
Bearbeitung = ActiveSheet.Range("E19")
xxx = ActiveSheet.Range("B19")
Maschine = ActiveSheet.Range("F19")
Zeichnungsnummer = ActiveSheet.Range("C19")
Artikelnr = ActiveSheet.Range("Artikelnummer")
Artikel = ActiveSheet.Range("Artikelbezeichnung")
Workbooks.Open Filename:= _
"K:\xxx\TEMP\Backupdatei.xlsx", Password:="xxx", WriteResPassword:="xxx"
Rows("2:2").Select
Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove
ActiveSheet.Range("A2") = Datum
ActiveSheet.Range("F2") = Bearbeitung
ActiveSheet.Range("C2") = xxx
ActiveSheet.Range("E2") = Maschine
ActiveSheet.Range("D2") = Zeichnungsnummer
ActiveSheet.Range("G2") = Artikelnr
ActiveSheet.Range("B2") = Artikel
ActiveWorkbook.Save
ActiveWorkbook.Close
Application.ScreenUpdating = True
End Sub

Ich hätte gerne das die Backupdatei.xlsx gleichzeitig in diesem Makro gespiegelt wird in zb. Backupdatei2.xlsx und diese aber nur einen schreibschutz hat.
Die Backupdatei soll dazu dienen das MA. z.B. Aufträge nach Maschinen zu filtern können falls Sie mal was nachschauen müssen. Viel mehr zum zweck darf ich leider nicht sagen aber es hat nichts mit geheimhaltung zu tun!
Anzeige
AW: Spiegelung einer Datei
19.08.2021 22:58:00
Yal
Hallo Tobias,
ungefähr so:

Sub Backup()
'...Dekalarationen
Const cDateiName = "K:\xxx\TEMP\Backupdatei.xlsx"
Application.ScreenUpdating = False
'... lesen
Workbooks.Open Filename:=cDateiName, _
Password:="xxx", WriteResPassword:="xxx"
'...schreiben
ActiveWorkbook.Save
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:=Replace(cDateiName, ".xlsx", "_ReadOnly.xlsx"), WriteResPassword:="xxx"
ActiveWorkbook.Close
Application.DisplayAlerts = False
Application.ScreenUpdating = True
End Sub
Ungeänderte zeilen habe ich weggelassen.
VG
Yal
Anzeige
AW: Spiegelung einer Datei
20.08.2021 09:10:08
Tobias
Hi Yal, danke ich werde das heute gleich mal probieren wenn ich auf Arbeit bin!
Mir ist aber noch eine zweite Variante in den sinn gekommen die ich auch nicht hinbekommen habe.
Wenn man in der _ReadOnly.xlsx eine Schaltfläche Aktualisieren einfügen würde, wo dann beim betätigen dieser SF sich die _ReadOnly.xlsx die Daten aus Backupdatei.xlsx Spalte A-G kopiert und einfügt oder halt sich die ganze Datei in diesem Moment spiegelt/ aktualisiert.
Verstehst du wie ich das meine?
AW: Spiegelung einer Datei
20.08.2021 10:01:16
Yal
Hallo Tobias,
Ich hatte diese Möglichkeit auch im Auge genommen, aber solange deine Quelle (lesend-)passwortgeschützt ist, wirst Du, egal wie, Schwierigkeit haben, um "von draußen" Daten zu holen.
Wobei den VBA mit Passwörter umgehen könnte, aber in deinem Fall würde ich grundsätzlich Power Query verwenden.
VG
Yal
Anzeige
AW: Spiegelung einer Datei
20.08.2021 10:55:29
Tobias
Und was wäre wenn man in beiden Dateien nur einen Schreibschutz einfügen würde? Selbst mit einer ungeschützten Datei habe ich es nicht wirklich hinbekommen bzw. keine Lösung gefunden wie man das am besten machen könnte.
Power Query Sagt mir nichts bzw. kenne ich mich damit auch nicht aus.
Viele Grüße
Tobias
AW: Spiegelung einer Datei
20.08.2021 22:34:39
Yal
Hallo Tobias,
Wenn die Quelle das Lesen nicht mehr sperrt, sollte es gehen.
Power Query ist eigentlich eine Datenverarbeitung, die spaltenweise eingerichtet wird, dann aber zeilenweise arbeitet. Ich habe für ein anderen Fall einen "How to" geschrieben. Du kannst sicher was daraus entnehmen, um zu sehen wie es funktioniert:
https://www.herber.de/forum/archiv/1844to1848/1844083_VBA_2_mehrere_gleiche_Werte_suchen.html#1844281
Ansonsten schaue am besten die Tutorials von Excelhero. Hier die erste Folge:
https://youtu.be/hEI5xckBKs8
VG Yal
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige