Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
980to984
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
980to984
980to984
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Daten in Access auf Netzlaufwerk schreiben

Daten in Access auf Netzlaufwerk schreiben
26.05.2008 19:12:00
onkelbobby
Hallo zusammen!
Um nicht komplett in die falsche Richtung zu arbeiten, würde ich gerne ein paar Tipps für mein Projekt bekommen!
Folgender Stand:
Mehrer Mitarbeiter bearbeiten je eine Excel-Datei, die lokal auf dem jeweiligen Rechner abgelegt ist. Diese Excel-Dateien sind vom Aufbau her identisch, bestehen aus mehreren Tabellen (z. B. Tabelle Adressen, Tabelle Bezirke, ...). Jeder Mitarbeiter bearbeitet hier seinen eigenen Kundenstamm. Auf den meisten Rechnern der Mitarbeiter ist KEIN Access installiert!
Ziel:
Jeder Mitarbeiter soll auf alle Daten der anderen Mitarbeiter zugreifen können (Leserecht), jedoch keine Daten des anderen ändern dürfen. Dieser Zugriff muss auch von mehreren Mitarbeitern gleichzeitig möglich sein.
Meine Idee:
Die Daten der Excel-Dateien werden in eine Access-Datenbank geschrieben, die auf einem Netzlaufwerk liegt. Pro Mitarbeiter und Tabelle wird je eine Tabelle in Access erstellt. Die einzelnen Tabellen werden dann in Access per Abfrage zusammengefasst, sodass z. B. eine Abfrage "Adressen" alle einzelnen Tabellen Adressen der Mitarbeiter zusammenfasst. Diese zusammengefassten Tabellen werden dann wieder in eine neue Excel-Datei exportiert (bzw. verknüpft), sodass jederzeit der aktuelle Stand für alle ersichtlich ist.
Ist dieser Weg prinzipiell machbar? Funktioniert das einfach mit Verknüfpung von Excel und Access? Sollten die Daten von Access auch wieder in die Ursprungs-Excel-Tabelle zurückgeschrieben werden, oder gibt es eine Art Synchronisierung der Daten, oder solltengar nur auf dem lokalen Rechner die Excel-Tabelle aktuell gehalten werden?
Bevor ich groß rumprobiere, wäre ich für einige Tipps dankbar!

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten in Access auf Netzlaufwerk schreiben
27.05.2008 08:03:05
Harald
Hallo Onkelbobbby,
klingt für mich reichlich kompliziert. Du verlagerst imho das Problem der Berechtigungen nur auf Access und handelst Dir dafür evtl. Schwierigkeiten mit der Synchronisation ein.
Ich würde das anders angehen:
1) serverbasierte Tabelle mit den Daten aller Nutzer anlegen
2) Blattschutz auf alle Blätter legen und Tabelle als freigegebene Tabelle speichern
3) Autoexec-Makro beim Öffnen der Tabelle laufen lassen, welches den Benutzernamen abfragt (siehe unten)
4) Abhängig vom Nutzernamen den Blattschutz der entsprechenden Blätter aufheben
5) Beim Speichern wieder Blattschutz für diese Blätter aktivieren.
Jetzt sollten alle benutzer gemeinsam mit derselben Datei arbeiten können und dennoch nur Daten auf den ihnen zugewiesenen Blättern ändern dürfen.
Gruß Harald
Declare

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


Sub UserName()
Dim B As String * 100
Dim L As Long
L = 100
GetUserName B, L
MsgBox Left(B, L - 1)
End Sub


(Hab' ich hier aus dem Forum)

Anzeige
AW: Daten in Access auf Netzlaufwerk schreiben
27.05.2008 08:32:27
onkelbobby
Hallo Harald,
danke für Deine Antwort!
Du würdest also empfehlen, alle Daten in eine Excel-Datei zu schreiben.
Könnte etwas unübersichtlich werden, da jede Datei aus 8 Tabellen besteht. Bei 12 Mitarbeitern, wären das 96 Tabellen!!! Darüber hinaus ist eine Datei schon jetzt sehr groß (ca. 5 MB), was wohl hauptsächlich an den Formatierungen, bzw. Berechnungen in den Tabellen liegt.
Vielleicht habe ich ja einen Denkfehler, aber ich dachte mir, das wäre recht einfach mit Verknüpfungen möglich. Ich habe mit Access noch nicht viel gearbeitet, deshalb (bevor ich mich verrenne), hier meine Anfrage.
Wäre es möglich:
1. Jeder Mitarbeiter bearbeitet weiterhin seine eigene Datei lokal auf seinem Rechner. Die Daten werden dann (z. B. per Verknüpfung oder per Makro beim Speichern) in eine Access-Datei geschrieben, die auf einem Netzlaufwerk liegt.
2. Es werden per Abfrage in dieser Access-Datei die verschiedenen Tabellen der Mitarbeiter zusammengefasst (z. B. "Adressen MA1" + "Adressen MA2", ... zu "Adressen ALLE MA")
3. Ebenfalls auf dem Netzlaufwerk liegt eine Excel-Datei, die mit diesen zusammengefassten Tabellen in der Access-Datei verknüpft ist und den jeweils aktuellen Stand beim Öffnen der Excel-Datei (aus der Access-Datei) abfragt.
?
Nach dieser Variante wäre eine Änderung der Daten weiterhin nur in der ursprünglichen Excel-Datei möglich. Es kann also jeder MA nur an seinen Daten etwas ändern!
Die Datenaktualisierung in der Access-Datei muss nicht zwingend in Echtzeit erfolgen. Eine Aktualiserung beim Schliessen (bzw. Speichern) der Excel-Datei würde mir genügen.
Das Speichern der reinen Daten (ohne Formatierungen, Berechnungen, usw.) in Access wäre sicherlich nicht so speicheraufwändig, wie die jetzige Excel-Datei, was lange Wartezeiten beim Speichern bzw. Laden vom Netzlaufwerk vermeidet. Die Verwaltung der 96 Tabellen wäre in Access sicherlich nicht so unübersichtlich wie in Excel.
Gibts hier nen Denkfehler?
Wie sähe es mit dem gleichzeitigen Zugriff auf die Access-Daten aus (also wenn zeitgleich von zwei Excel-Datei geschrieben werden soll, bzw. wenn mehrere MA gleichzeitig die "neue zusammengefasste Excel"-Datei öffnen wollen?
Weitere Vorschläge sind gerne willkommen!
Danke!

Anzeige
AW: Daten in Access auf Netzlaufwerk schreiben
27.05.2008 08:36:00
Harald
Sorry,
zu Access kann ich Dir nicht helfen.
Gruß Harald

AW: Daten in Access auf Netzlaufwerk schreiben
28.05.2008 13:13:00
DirkP
Hallo,
ohne nun näher auf die Lösung generell einzugehen, ein paar allgemeine Hinweise:
-Nutzung von MS Access ist möglich, zum Zugriff müssten die MSDAO auf den Rechnern installiert sein
(heißt nicht, das MS Access installiert sein muss)
-Nutzung von MS Access in dem dargestellten Szenario bedeutet aber sicherlich auch ein wenig
Makro-Programmierung, um alles nutzerfreundlich auf die Beine zu stellen.
-Achtung bei paralleler Nutzung von MS-Access (Multiuser-Betrieb)
:MS Access nutzt kein Record-Locking sondern Betriebssystem-Locking, was ggfls zu unerwünschten Sperrungen Deiner Tabellen führen könnte
:MS Access ist im Multiuser-Betrieb oberflächlich betrachtet ein wenig anfällig bei Abstürzen (also wenn der Connect nicht sauber abgebaut wird), was sich z. B. in einem DB-Sicherheitskomplett-Lock auswirkt. Von daher würde ich in dem Szenario über eine verlinkte MS-Access-DB im Netz zugreifen
Grüße!
Anzeige

189 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige