Von: access-weekly-html-request@cgn.smarttools.de im Auftrag von SmartTools Publishing [access-weekly-html-reply@smarttools.de]
Gesendet: Freitag, 8. April 2005 00:34
An: Access Weekly Abonnenten
Betreff: SmartTools Access Weekly vom 8.4.2005

Ausgabe vom 8. April 2005

 In dieser Ausgabe

Access-News & Downloads
Access-Tipp der Woche
Access-Helpline
Newsletter-Tipp
 Access-News & Downloads

Spotlight: Datenbanken optimieren, analysieren und dokumentieren

Der Total Access Analyzer ist eine mehrfach ausgezeichnete Access-Erweiterung, die viele Anwender und Entwickler mit ihren Datenbanken einsetzen. Voll automatisch liefert der Analyzer versteckte Fehler, gibt Optimierungstipps, erstellt grafische Übersichten der Zusammenhänge zwischen allen Datenbank-Objekten, findet ungenutzte Objekte und ermöglicht eine Cross-Referenz (welches Objekt wird an welchen Stellen in der Datenbank verwendet) sowie die komplette Dokumentation aller Objekte.

Ab sofort steht zusätzlich zu den bisherigen Versionen der brandneue Total Access Analyzer 2003 für Access 2003 zur Verfügung. Er bietet nicht nur eine Fülle von neuen Berichten und Analysen, sondern unterstützt auch die MDB- und ADP-Dateien sowohl von Access 2000 als auch von Access 2002 und 2003. Weitere Informationen zu der neuen Version finden Sie unter der folgenden Adresse:

http://www.add-in-world.com/katalog/ta_analyzer2003/

Den Total Access Analyzer gibt es außerdem auch für die übrigen Access-Versionen:

Total Access Analyzer für Access 2002/XP

Total Access Analyzer für Access 2000

Total Access Analyzer für Access 97

Download-Tipp: Daten aus Access an Word übergeben

Um Informationen aus Access nach Word zu übertragen, müssen die Daten normalerweise entweder exportiert oder über die Zwischenablage übertragen werden. Beide Wege sind recht umständlich und überfordern weniger erfahrene Anwender. In unserer kostenlosen Techinfo stellen wir eine Lösung vor, mit der Sie beispielsweise eine Adresse aus einem Access-Formular per Mausklick an Word übergeben können. Mit wenig Aufwand können Sie diese nützliche Funktion in Ihre eigenen Datenbanken integrieren:

 Techinfo: Daten aus Access an Word übergeben

Download-Tipp: Kontextmenü-Erweiterungen für Access

Die Access-Spezialisten von Trigeminal stellen unter anderem zwei kostenlose COM-Add-Ins zur Verfügung, mit denen Sie die Kontextmenüs von Access für den bequemeren Aufruf nützlicher Funktionen erweitern können. Microsoft hat zum Beispiel mit Access 2000 eine "InPlace-Bearbeitung" für Unterformulare und Unterberichte eingeführt, die allerdings bei Entwicklern auf wenig Gegenliebe stieß, da sie nur für große Unterformulare/Unterberichte sinnvoll einzusetzen ist. Bei kleineren Unterformularen/Unterberichten sind nur graue Balken sichtbar. Die zu ändernden Elemente müssen mühsam über die Rollbalken ins Bild geholt werden.

Der "TSI SubForminator" erweitert das Kontextmenü im Formular-/Berichtsentwurf um einen Eintrag TSI SUBFORMINATOR!, über den Sie ein Unterformular/einen Unterbericht zur Bearbeitung direkt in einem eigenen Fenster öffnen können. Sie finden das Archiv des Tools unter der folgenden Adresse:

http://www.trigeminal.com/utilities/TsiSubforminator.zip

Entpacken Sie den Inhalt nach dem Download zunächst in ein beliebiges Verzeichnis auf Ihrer Festplatte. Von dort aus muss das COM-Add-In beim System registriert werden:

  1. Wählen Sie das Menü Start-Ausführen an.
  2. Geben Sie die folgende Anweisung ein:
regsvr32 C:\Entpackverzeichnis\TsiSubforminator.dll

"C:\Entpackverzeichnis" ersetzen Sie dabei durch Laufwerk/Pfad des Verzeichnisses, in das Sie das Archiv entpackt haben.

  • Drücken Sie Return oder klicken Sie auf Ok.
Ab dem nächsten Start von Access können Sie dann im Formular-/Berichtsentwurf mit der rechten Maustaste auf ein Unterformular/einen Unterbericht klicken und über den Eintrag Tsi Subforminator! in einem eigenen Fenster bearbeiten.

Ebenfalls ab Access 2000 vermissen Entwickler den Aufruf des Ausdruck-Editors über das Kontextmenü in Modulen. Mit dem COM-Add- In "TSI XPressions" können Sie es quasi wiederbeleben. Nach der Installation finden Sie im Kontextmenü von Modulen den Eintrag Tsi Xpression, über den nun der Ausdruck-Editor wie gewohnt abgerufen werden kann. Sie finden das Archiv des Tools unter der folgenden Adresse:

http://www.trigeminal.com/utilities/TsiXpr90.zip

Entpacken Sie den Inhalt nach dem Download zunächst wieder in ein beliebiges Verzeichnis auf Ihrer Festplatte. Von dort aus muss das COM-Add-In "TsiXpr90.dll" dann im nächsten Schritt wie oben erläutert beim System registriert werden. Ab dem nächsten Start von Access lässt sich nun der Ausdruck-Editor auch wieder in Modulen über das Kontextmenü abrufen.

 Access-Tipp der Woche

Sicherheitsabfragen durch digitale Signatur umgehen, Teil 1
Versionen: Access 2003

Mit Office 2003 hat Microsoft den Makrovirenschutz, der bereits mit früheren Office-Versionen in anderen Office-Anwendungen Einzug gehalten hat, auch in Access 2003 integriert. Das führt dazu, dass beim Öffnen jeder Datenbank eine Sicherheitsabfrage "Diese Datei ist möglicherweise nicht sicher..." angezeigt wird. Sie haben dann die Möglichkeit, die Datenbank mit Klick auf die Schaltfläche Öffnen zu starten oder das Öffnen mit einem Klick auf Abbrechen zu unterbinden. Die Alternative Makros deaktivieren aus anderen Makrovirenschutz-Implementationen steht hier nicht zur Verfügung.

So lobenswert der Makrovirenschutz ist, so nervig kann er sein, wenn man tagsüber Dutzende eigener Datenbanken öffnet, von denen man sicher weiß, dass sie keine gefährlichen Makros enthalten. Sie können diese Sicherheitsabfrage zwar umgehen, indem Sie unter Extras-Makro-Sicherheit die Sicherheitsstufe auf "Niedrig" einstellen, aber damit umgehen Sie das Sicherheitskonzept von Access. Öffnen Sie dann tatsächlich einmal eine Datenbank aus unbekannter Quelle, können darin enthaltene Makros mit Schadensroutinen zum Beispiel über das "AutoExec"-Makro direkt gestartet werden.

Sie können jedoch die in Ihren eigenen Datenbanken enthaltenen VBA-Projekte digital signieren und ein Zertifikat auf dem System installieren, das diese Signatur prüft. Alle auf diese Weise gekennzeichneten und geprüften Datenbanken stuft Access als "vertrauenswürdig" ein, so dass die Abfrage selbst bei Sicherheitsstufe "Hoch" nicht mehr angezeigt wird. Sie können also die Sicherheitsstufe auf "Mittel" einstellen und müssen dann bei Ihren eigenen Datenbanken keine Sicherheitsabfrage mehr beantworten. Sie werden aber bei anderen Datenbanken darauf hingewiesen, dass sie gegebenenfalls unsicher sind, so dass man individuell entscheiden kann, ob sie geöffnet werden sollen oder nicht. Außerdem unterbinden Sie so unbemerkte Manipulationen an Ihren VBA-Projekten: Sobald eine Änderung erfolgt ist, verwirft Access die digitale Signatur - beim nächsten Öffnen der Datenbank erkennen Sie also durch die Sicherheitsabfrage die Manipulation und können entsprechend reagieren.

Nun wird jedoch landläufig angenommen, dass eine digitale Signatur und die Einrichtung von Zertifikaten kompliziert und teuer sind. Das trifft jedoch nur bedingt zu. Sie können sich für Ihre eigenen Datenbanken ein persönliches, völlig kostenloses Zertifikat ausstellen und damit Ihre VBA-Projekte digital signieren. Dazu liefert Microsoft mit Office 2003 ein Tool SELFCERT.EXE aus, das Sie im Installationsverzeichnis von Office 2003, also beispielsweise unter "C:\Programme\Microsoft Office\Office11" finden. Öffnen Sie dieses Verzeichnis mit dem Windows-Explorer und doppelklicken Sie auf SELFCERT.EXE. Sollte sich SELFCERT.EXE nicht im Installationsverzeichnis von Office 2003 befinden, starten Sie das Office-Setup von der CD und installieren Sie die Option "Digitale Signaturen für VBA-Projekte" im Bereich "Gemeinsam genutzte Office-Features" nach.

Das Tool zeigt ein kleines Fenster mit einem Textfeld "Ihr Zertifikatsname" an. Geben Sie hier Ihren Namen oder den Namen Ihrer Firma ein, klicken Sie dann auf Ok und bestätigen Sie daraufhin angezeigte Erfolgsmeldung mit einem weiteren Klick auf Ok. Damit haben Sie ein Zertifikat erstellt und beim System registriert, mit dem Sie nun Ihre VBA-Projekte signieren können:

  1. Öffnen Sie Ihre Datenbank und bestätigen Sie die Sicherheitsabfrage mit einem Klick auf Öffnen.
  2. Wechseln Sie mit Alt+F11 in die VBA-Entwicklungsumgebung.
  3. Markieren Sie der Reihe nach die darin enthaltenen Projekte und wählen Sie das Menü Extras-Digitale Signatur an.
  4. Im nachfolgenden Dialog klicken Sie auf Wählen und übernehmen in der dann angezeigten Auswahl das soeben erstellte Zertifikat per Doppelklick.
  5. Klicken Sie nach der Signatur aller Projekte auf das Symbol Speichern und verlassen Sie die VBA-Entwicklungsumgebung wieder. Bitte beachten Sie, dass die digitale Signatur in Zukunft nach jeder Änderung an einem VBA-Projekt erneut vorzunehmen ist!
  6. Schließen Sie die Datenbank und öffnen Sie sie erneut.
  7. Access zeigt nun einen Hinweis auf die digitale Signatur an. Aktivieren Sie die Option Dateien von dieser Quelle immer vertrauen und automatisch öffnen und klicken Sie auf Öffnen.
Der zweite Teil dieses Tipps der Woche verrät Ihnen, wie Sie Zertifikate verwalten und mit Ihren Datenbanken weitergeben, damit auch Benutzer auf anderen Rechnern ohne Sicherheitsabfrage mit Ihren Datenbanken arbeiten können.

ANZEIGE 
Outlook-Daten automatisch sichern

Was würde passieren, wenn Ihre Outlook-Daten plötzlich und unerwartet verloren gehen? Sie verlieren meistens nicht nur E-Mails, sondern auch wichtige Adressen, Termine aus dem Kalender, Aufgaben und Notizen.

Hinzu kommt ein erheblicher Einrichtungsaufwand, um alle Filter und Regeln, Kategorien, Signaturen, Symbolleisten und E-Mail- Konten so einzurichten, dass Sie wieder wie gewohnt arbeiten können.

Mit dem brandneuen SmartTools Outlook Backup haben Sie diese Probleme zuverlässig im Griff:

  • Machen Sie sich nie wieder sorgen um Ihre Daten, denn der Backup-Vorgang lässt sich mit wenig Aufwand automatisieren.
  • SmartTools Outlook Backup sichert nicht nur die Datendatei, sondern kümmert sich außerdem um Ihre Outlook- Symbolleiste, Kategorien, E-Mail-Kontoeinstellungen, Signaturen, Filter und Regeln.
  • Bei einem Datenverlust sparen Sie viele Stunden Konfigurationsaufwand, denn alle gesicherten Informationen lassen sich mit wenigen Mausklicks wiederherstellen.
SmartTools Outlook Backup ist ab sofort verfügbar und kann zurzeit mit 10% Einführungsrabatt bestellt werden:

http://www.add-in-world.com/katalog/outlook-backup/


 Access-Helpline

Haben Sie Fragen zu Access Access 97, 2000, 2002/XP oder 2003? Dann wenden Sie sich mit einer genauen Problembeschreibung (bitte keine Datenbanken schicken!) an:

access-helpline@smarttools.de

Unser Redaktionsteam wählt in jeder Ausgabe eine oder mehrere Fragen aus und beantwortet Sie an dieser Stelle im Newsletter.

Installationsverzeichnis von Access ermitteln
Versionen: Access 2003, 2002/XP, 2000 und 97

 FRAGE:  Für die Installation per Setup-Programm muss ich wissen, auf welchem Laufwerk und in welchem Verzeichnis Office beziehungsweise MSACCESS.EXE installiert ist. Wie kann ich das herausfinden?
S. Ahrt

 ANTWORT:  Diese Informationen finden Sie in der Registry unter HKEY_LOCAL_MACHINE\ Software\ Microsoft\ Office. Dort trägt jede Office- Anwendung ihr Installationsverzeichnis wie folgt ein:

Office 97:
\8.0\BinDirPath

Office 2000, XP, 2003:

\9.0\Common\InstallRoot\Path
\10.0\Common\InstallRoot\Path
\11.0\Common\InstallRoot\Path

Diese Einträge verweisen jeweils auf das Installationsverzeichnis von Office, also beispielsweise auf "C:\Programme\Microsoft Office\Office10" für Office XP.

Ab Office 2000 ist ein zusätzlicher Eintrag für den direkten Installationsort von Access vorhanden:

\9.0\Access\InstallRoot\Path
\10.0\Access\InstallRoot\Path
\11.0\Access\InstallRoot\Path

Bitte beachten Sie, dass die Pfade je nach Office-Version mal mit, mal ohne abschließenden Backslash in der Registry gespeichert sind! Setup-Systeme stellen jedoch Funktionen wie "Remove trailing backslash" zur Verfügung, über die Sie einheitliche Pfade ohne abschließenden Backslash generieren können.

Datenbank lokal oder im Netzwerk geöffnet?
Versionen: Access 2003, 2002/XP, 2000 und 97

 FRAGE:  Ich muss in einer VBA-Routine erkennen können, ob die aktuelle Datenbank von der lokalen Festplatte oder von einem Netzwerklaufwerk gestartet wurde. Können Sie mir einen Tipp geben, wie sich das feststellen lässt?
B. Walter

 ANTWORT:  Dazu können Sie die API-Funktion "WNetGetConnection()" verwenden:

Public Declare Function WNetGetConnection Lib "mpr.dll" _
               Alias "WNetGetConnectionA" _
               (ByVal lpszLocalName As String, _
                ByVal lpszRemoteName As String, _
                cbRemoteName As Long) As Long

Die Funktion erwartet als ersten Parameter eine Laufwerksbezeichnung wie "C:" oder "D:". Der zweite Parameter ist eine lokale Variable, in der gegebenenfalls der Name der Netzwerkfreigabe zurückgegeben wird. Der dritte Parameter legt die maximale Anzahl Von Zeichen fest, die zurückgemeldet werden können. Der Aufruf erfolgt am besten über eine globale Funktion "IsNetworkDB()":

Function IsNetworkDB() As Boolean
  Dim strPath As String
  Dim strDrive As String, strResult As String
  Dim R As Long

  IsNetworkDB = False
  strPath = CurrentDb.Name
  strDrive = Left$(strPath, 2)
  If strDrive = "\\" Then
    IsNetworkDB = True
    Exit Function
  End If
  strResult = Space$(250)
  R = WNetGetConnection(strDrive & vbNullChar, _
                        strResult, _
                        Len(strResult))
  If R = 0 And Trim$(strResult) <> "" Then
   IsNetworkDB = True
  End If

End Function

Über "CurrentDb.Name" wird zunächst der Pfad der aktuellen Datenbank ermittelt. Die ersten beiden Zeichen sind der Laufwerksbuchstabe oder "\\", falls als UNC-Pfad gespeichert. Ist das der Fall, wird das Funktionsergebnis auf "True" gesetzt und die Funktion direkt verlassen. Andernfalls übergeben wir den Laufwerksbuchstaben an "WNetGetConnection()". Das Ergebnis dieser Funktion ist "0" und der Freigabename in "strResult", wenn es sich um ein Netzwerklaufwerk handelt. Ansonsten ist das Ergebnis ungleich "0" (zum Beispiel 2250, ERROR_NOT_CONNECTED) und "strResult" ist eine leere Zeichenkette.

ANZEIGE 
Die komfortable Urlaubs-Datenbank für Access

Mit dieser Datenbank haben Sie die Fehlzeiten in Ihrer Firma oder Abteilung optimal im Griff: Urlaub, Krankheit, Sonderurlaub und sonstige Abwesenheiten lassen sich für jeden Mitarbeiter komfortabel mit wenigen Mausklicks erfassen. Wenn Sie mit dem einen oder anderen Detail nicht zufrieden sind, ändern Sie es einfach ab, denn Sie erhalten die Datenbank ungeschützt mit dem kompletten Sourcecode.

Ab sofort steht Ihnen die brandneue Version 2.11 der Urlaubsdatenbank zur Verfügung. Zu den wichtigsten Neuerungen zählen:

  • Voll netzwerkfähig durch Front- und Backend-Lösung. Im Mehrplatzbetrieb fallen keine weiteren Kosten an!
  • Unterstützung von halben Abwesenheitstagen
  • Balken- und Mitarbeiterzahl auf 25 pro Abteilung erweitert
  • Erweiterte Druckfunktionen für übersichtliche Berichte
  • Ausführliches deutsches Handbuch
Die Urlaubs-Datenbank für Access 97, 2000, 2002/XP und 2003 hat sich bereits hundertfach in der Praxis bewährt und ist nach der voll automatischen Installation sofort einsatzbereit:

http://www.add-in-world.com/katalog/urlaubsdatenbank/


Nachtrag: Abfrageergebnisse schützen
Versionen: Access 97, 2000, 2002/XP und 2003

Zu diesem Beitrag hat uns eine Zuschrift von Access Weekly-Leserin R. Berlinghof erreicht, die wir hier dankend weitergeben:

Mit einem kleinen Trick kann man eine Abfrage bzw. einzelne Felder auch dadurch schützen, dass man die Werte als berechnetes Feld hereinholt. Ein Textfeld lässt sich dadurch schützen, dass man nicht das Originalfeld anzeigt, sondern ein Hilfsfeld anlegt und eine Berechnung durchführt, die im Ergebnis nichts ändert:

Text1: [Feldname] & ""

Es wird ein weiteres Textzeichen angefügt, das aber nicht ausgefüllt wird, so dass der ursprüngliche Texteintrag angezeigt wird, der nun aber nicht mehr verändert werden kann. Bei Zahlen analog: (der Wert wird mit 1 multipliziert und ändert sich dadurch nicht):

Zahl1: [Feldname] * 1

 Newsletter-Tipp

Word-Tipps kostenlos per E-Mail

SMARTTOOLS WORD WEEKLY ist ein brandneuer E-Mail-Newsletter, der jede Woche kostenlose Tipps rund um Word 97, 2000, 2002/XP und 2003 liefert:

  • Undokumentierte Parameter und Funktionen
  • Berichte über Bugs, Patches und Sicherheitslücken
  • Fertige Makros zur Automatisierung häufiger Arbeitsvorgänge
  • Perfekte Datensicherung Ihrer Dokumente
  • So nutzen Sie Word im Netzwerk
  • Helpline für Ihre Fragen zu Word
Klicken Sie hier für Ihr kostenloses Abo!

 Abonnementverwaltung

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.

Copyright © 2005 SmartTools Publishing Thomas Tai
Luisenstrasse 52, 49565 Bramsche
Telefon: 05461/91052, Fax: 05461/2609
E-Mail: access-weekly@smarttools.de
Internet: http://www.smarttools.de/

---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.859 / Virus Database: 585 - Release Date: 14.02.2005