Access-News & Downloads
Access-Helpline
Spotlight: Adressen aus Access und Outlook ganz einfach nach Word übernehmen Der SmartTools Brief- und Fax-Manager 2003 reduziert das Erstellen eines neuen Briefes oder Fax-Anschreibens auf wenige Mausklicks. In Zukunft geben Sie keine Adresse mehr doppelt ein, denn Sie können auf Ihre vorhandenen Datenbestände in jeder beliebigen Access-Datenbank, in Outlook oder auf dem Exchange Server zugreifen. Den ganzen Vorgang steuern Sie aus Word 2003, 2002/XP oder 97.
http://www.add-in-world.com/katalog/briefman2003/ Download-Tipp: Doppelseitendruck für Access-Berichte Wenn Sie umfangreiche Berichte ausgeben, bietet es sich an, beide Seiten eines Blattes zu benutzen. Standardmäßig haben Sie diese Möglichkeit nur, wenn Ihr Drucker die so genannte Duplex-Ausgabe unterstützt, aber das ist nur selten der Fall. Unser Assistent hilft weiter: Nach der automatischen Installation können Sie ihn jederzeit über das Menü Extras-Add-Ins aufrufen. Wählen Sie dann den gewünschten Bericht aus und drucken Sie zunächst nur die Seiten mit ungerader Seitennummer. Das ausgegebene Papier drehen Sie dann um, legen es erneut in den Drucker und starten dann den Ausdruck der Seiten mit gerader Seitennummer. Das Ergebnis: Ihr Bericht im Doppelseitendruck. Den kostenlosen Download finden Sie unter:
Techinfo: API-Funktionen in VBA-Lösungen einsetzen Einer der Vorteile von VBA ist die Erweiterbarkeit durch die Einbindung externer System-Funktionen des Windows-API (API= Application Programing Interface). Viele VBA-Entwickler scheuen allerdings vor dem Einsatz von API-Funktionen zurück, weil einerseits Grundwissen notwendig ist und andererseits eine falsche Parameterübergabe oder der nicht ordnungsgemäße Umgang mit API-Datenstrukturen schnell zu einem Absturz führen kann. Unter Beachtung von ein paar einfachen Grundregeln und mit dem Verständnis für die Einbindung von API-Funktionen sind diese Ängste jedoch unbegründet. David Shank, VBA-/API-Spezialist von Microsoft, hat sich des Themas angenommen und ein leicht verständliches, aber dennoch tiefgehendes White Paper dazu erstellt: API-Funktionen in VBA-Lösungen einsetzen Nach einer Einführung in das API-Konzept weist der Autor zunächst auf die verfügbare Dokumentation der API-Funktionen hin und stellt einen Link auf die online verfügbaren Teile der SDKs (SDK= Software Development Kit) zur Verfügung. Im Anschluss werden dann zunächst die Anweisungen und Schlüsselwörter erläutert, die VBA für die Einbindung und Deklaration von API-Funktionen zur Verfügung stellt. Dabei geht der Autor detailliert auf die Unterschiede zwischen Funktionen und Prozeduren ein und beschreibt Details für die Parameterübergabe und Auswertung von Rückmeldungen. Weiter geht es dann mit der Erläuterung von vordefinierten Konstanten und Datentypen, benutzerdefinierten Datentypen und Handles, die für die Aufrufsteuerung der Funktionen verwendet werden. Die einzelnen Beschreibungen begleiten verschiedene Beispiele, die den Einsatz von API-Funktionen anschaulich verdeutlichen.
Tipps und Problemlösungen zu Datenbanken in Mehrbenutzerumgebungen, Teil 1 Versionen: Access 2003, 2002/XP, 2000 und 97 In vielen Unternehmen werden Access-Datenbanken auf einem zentral erreichbaren Netzwerklaufwerk gespeichert, damit mehrere Anwender gleichzeitig darauf zugreifen können. Dabei kommt es immer wieder zu Problemen: Access meldet regelmäßig, dass die Datenbank beschädigt sei und repariert werden muss, Datensätze können angeblich nicht bearbeitet werden, weil sie von einem anderen Anwender gesperrt sind, das Laden und Anzeigen von Formularen, Berichten oder Abfragen benötigt unverhältnismäßig viel Zeit. In diesem zweiteiligen Tipp der Woche gehen wir auf die häufigsten Probleme ein und zeigen Lösungsansätze auf. Eine der Ursachen für Beschädigungen von Datenbanken in Mehrbenutzerumgebungen sind Server- oder Netzwerkprobleme. In der Regel kommen Windows NT, 2000, XP/Pro oder 2003 als Serversystem zum Einsatz. Diese Systeme lassen sich so einstellen, dass sie nach einem Problem selbständig neu starten. Meistens bemerken nicht einmal die Administratoren, wenn ein Server nach einem Problem neu aufsetzt. Wenn in diesem Moment ein oder mehrere Anwender auf eine Datenbank zugreifen, können gegebenenfalls neue oder geänderte Daten entweder nicht zurückgeschrieben werden. Das gleiche Problem tritt auf, wenn die Netzwerkverbindung zum Beispiel wegen eines defekten Hubs/Switches oder eines ebenfalls defekten oder auch aus Versehen gezogenen Netzwerkkabels gestört wird. Die Datenbank befindet sich anschließend in einem inkonsistenten Zustand, der sich entweder beim nächsten Zugriff oder - schlimmer - erst nach einiger Zeit bemerkbar macht. Access meldet dann typischerweise ein falsches Datenbankformat. Im Falle einer Beschädigung ist die Datenbankstruktur noch weitgehend erhalten. Sie können dann direkt die Funktion zur Reparatur starten, die häufig auch erfolgreich verläuft. In den übrigen Fällen meldet Access im Laufe der Reparatur gegebenenfalls Fehler an einzelnen Objekten. Diese sind dann dermaßen schwer beschädigt, dass eine automatische Reparatur nicht mehr möglich ist. Notieren Sie sich zunächst die Typen/Namen der Objekte. Legen Sie dann eine neue Datenbank an und versuchen Sie, alle Objekte - auch die, bei denen Probleme gemeldet wurden - über das Menü Datei-Externe Daten-Importieren aus der beschädigten Datenbank in die neue Datenbank zu übertragen. Oftmals kann Access Objekte, die bei der Reparatur "durchgefallen" sind, im Zuge des Imports trotzdem noch korrekt übernehmen. Andernfalls bleibt nichts anderes übrig, als die defekten Objekte entweder aus einer Datensicherung separat zu importieren und die seit der letzten Sicherung vorgenommenen Änderungen nachzuholen oder sie komplett neu anzulegen. Bei einem nicht erkannten Datenbankformat sind die Beschädigungen schwerwiegender. Access bietet in diesem Fall auch gar nicht erst die Option, eine Reparatur zu starten. Sie sollten es aber in jedem Fall versuchen:
Sollten Sie Fehlermeldungen bezüglich beschädigter oder nicht erkannter Datenbanken erhalten, ohne dass erkennbare Server- oder Netzwerkprobleme der oben geschilderten Art vorliegen, ist eventuell eine Server-Einstellung nicht korrekt. Das Problem resultiert aus einer speziellen Funktion der Windows-Server, dem so genannten "Opportunistic Locking" (OpLocks). Dabei versucht der Server, Bestandteile von Dateien vorausschauend zu sperren und so den Zugriff zu beschleunigen bzw. sicherer zu machen. In Verbindung mit dem eigenen Sicherungsmechanismus von Access kann das aber dazu führen, dass falsche Sperrungen erfolgen und bei Zugriffsversuchen Daten zum Teil irreparabel beschädigt werden. Da sich der Sicherheitsmechanismus von Access nicht steuern lässt, muss auf dem jeweiligen Server eingegriffen werden. Ein kleiner Registry-Eintrag schaltet das "Opportunistic Locking" ab und sorgt so für eine erhöhte Datensicherheit. Den Registry-Eintrag legen Sie wie folgt an:
Gegen Server- oder Netzwerkprobleme und die damit verbundenen Beschädigungen von Datenbanken sind Sie mehr oder weniger machtlos. Es empfiehlt sich, den Server so einzustellen, dass er NICHT automatisch neu startet. Tut er das, können Anwender anschließend direkt wieder auf die Datenbank zugreifen und verschlimmern eventuell eine nicht sofort erkannte Inkonsistenz. Muss der Server manuell neu gestartet werden, haben Sie die Möglichkeit, die Datenbank sofort zu prüfen, sie gegebenenfalls zu reparieren und können so die Verfügbarkeit einer konsistenten Datenbank sicherstellen. Neben Server- und Netzwerkproblemen gibt es noch einige weitere mögliche Ursachen für Beschädigungen von Datenbanken in Mehrbenutzerumgebungen. Hier können Sie jedoch als Administrator vorbeugen und entsprechende Maßnahmen ergreifen. Mehr dazu im zweiten Teil dieses Tipps in der nächsten Ausgabe von Access Weekly.
Haben Sie Fragen zu Access 2003, 2002/XP, 2000 oder 97? Dann wenden Sie sich mit einer genauen Problembeschreibung (bitte keine Datenbanken schicken!) an: access-helpline@smarttools.de Unser Redaktionsteam wählt in jeder Ausgabe Fragen aus und beantwortet Sie an dieser Stelle im Newsletter. Datenbanken über den Aufgabenbereich öffnen Versionen: Access 2003 und 2002/XP FRAGE: Ich möchte meine Adressverwaltung und meine Terminverwaltung bei Bedarf gerne über den Aufgabenbereich öffnen können. Kann man ihn individuell erweitern? R. Kiefer ANTWORT: Eine Erweiterung des Aufgabenbereichs erfolgt über die Registry. Basis der anzulegenden Einträge ist der Abschnitt "HKEY_CURRENT_USER\ Software\ Microsoft\ Office\ x\ Access\ New File\CustomX". "x" ist "10.0" bei Access 2002/XP und "11.0" bei Access 2003. "CustomX" definiert den eigentlichen Eintrag im Aufgabenbereich, wobei "X" eine fortlaufende Nummer "1", "2", "3" usw. ist. Um den Aufruf Ihrer "Standard-Datenbanken" im Aufgabenbereich unter "Datei öffnen" anzulegen, gehen Sie wie folgt vor:
Zeilenwechsel im Memofeld Versionen: Access 2003, 2002/XP, 2000 und 97 FRAGE: Wenn ich in einem Memofeld Text erfasse und Return drücke, um eine neue Zeile zu beginnen, springt der Cursor ins nächste Feld. Kann man in einem Memofeld keine Zeilenumbrüche verwenden oder gibt es da einen speziellen Trick? U. Reinhardt ANTWORT: Einen Zeilenumbruch erreichen Sie in einem Memofeld mit der Tastenkombination Strg+Return. Sie können das Memofeld aber auch so einstellen, dass Return einen Zeilenumbruch einfügt, statt zum nächsten Feld zu springen:
Formular-Sortierung beibehalten Versionen: Access 2003, 2002/XP, 2000 und 97 FRAGE: Ich habe ein Problem mit einem Access-Formular: Das Formular basiert auf einer Tabelle, die per Auto-Wert eine laufende Nummer hat und enthält u.a. auch Strassen und Hausnummern. In den Formulareigenschaften habe ich festgelegt, dass Access die Datensätze nach der laufenden Nummer sortieren soll. Trotzdem kommt es immer wieder vor, dass beim Öffnen der Datenbank Access die Daten auf einmal nach der Hausnummer sortiert. Access verliert anscheinend diese Einstellung. Kennen Sie die Ursache? J. Jaenke ANTWORT: Ein möglicher Grund besteht darin, dass Sie die Sortierung manuell im Formular geändert haben (Rechtsklick in Feld, Aufsteigen/Absteigend) - diese Sortierung speichert Access automatisch beim Schließen des Formulars und stellt sie beim nächsten Öffnen wieder her. Das sollte allerdings nur geschehen, wenn ursprünglich keine Sortierung eingestellt war. Manchmal gerät Access hier aber durcheinander. Am sichersten lässt sich das Problem lösen, indem Sie einfach beim Öffnen des Formulars die Sortierung explizit beispielsweise wie folgt setzen: Private Sub Form_Load() Me.OrderBy = "[Tabelle|Abfrage].Feldname" Me.OrderByOn = True End Sub
Word-Tipps kostenlos per E-Mail SmartTools Word Weekly ist unser beliebter E-Mail-Newsletter mit kostenlosen Tipps rund um Word 2003, 2002/XP, 2000 und 97:
Um SmartTools Access Weekly abzubestellen, senden Sie einfach das Kommando "unsubscribe" an die Adresse access-weekly-html-request@smarttools.de Bitte beachten Sie, daß das Kommando im Nachrichtentext stehen muß (nicht im Betreff) und Sie keine Mail im HTML-Format senden dürfen. Weitere Informationen zur Verwaltung der Liste erhalten Sie mit dem Kommando "help" an dieselbe Adresse.
|