Von: access-weekly-html-request@cgn.smarttools.de im Auftrag von SmartTools Publishing [access-weekly-html-reply@smarttools.de]
Gesendet: Donnerstag, 17. Februar 2005 23:09
An: Access Weekly Abonnenten
Betreff: SmartTools Access Weekly vom 18.2.2005

Ausgabe vom 18. Februar 2005

 In dieser Ausgabe

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

Spotlight: Mailwasher Pro - die perfekte Outlook-Ergänzung gegen Spam, Würmer und unerwünschte E-Mail

Der Junk-Mail-Filter von Outlook und eine schier unüberschaubare Anzahl von Zusatzprogrammen sollen Sie von unerwünschten Mails befreien. Der Nachteil dieser Lösungen: Die Nachrichten werden zunächst kosten- und zeitintensiv auf Ihren Rechner heruntergeladen und erst dann analysiert, sortiert oder gegebenenfalls gelöscht.

Mailwasher Pro ist die revolutionäre Alternative - das bereits millionenfach bewährte Programm wird ab sofort von SmartTools Publishing in einer komplett deutschen Version angeboten. Das Konzept:

  • Mit Mailwasher Pro bestimmen Sie alleine, welche Mails von Outlook überhaupt auf Ihren Computer geladen werden.
  • Viren, Würmer, Spam, Mails mit umfangreichen Anhängen und andere unerwünschten Nachrichten werden bereits auf dem Mailserver gelöscht, so dass sie erst gar nicht auf ihren Computer gelangen.
  • Mailwasher Pro kann gefährliche und unerwünschte Mails automatisch erkennen. Das Programm sortiert die Nachrichten für Sie vor. Auf Wunsch kontrollieren Sie die Liste noch und löschen dann per Mausklick alle gefährlichen und nicht erwünschten Mails direkt auf dem Mailserver.
  • Outlook wird erheblich entlastet. Sie sparen Zeit und Geld, weil nur noch die Mails komplett geladen werden, die Sie auch wirklich empfangen möchten.
  • Mailwasher Pro kann sowohl normale Mailkonten (POP3), als auch IMAP, AOL und Hotmail von Spam befreien.
Mailwasher Pro ist dank komfortabler Assistenten in wenigen Minuten eingerichtet (die Informationen über Ihre Mailkonten können beispielsweise direkt aus Outlook übernommen werden) und sofort einsatzbereit.

Nähere Informationen zu Mailwasher Pro und dem zur Zeit gültigen Einführungspreis mit 15% Rabatt finden Sie unter:

http://www.add-in-world.com/katalog/mailwasher-pro/

Download-Tipp: Komfortable Navigationsschaltflächen für Access-Formulare

Die Standard-Navigationsschaltflächen von Access erweisen sich in der Praxis als wenig komfortabel. Sie sind zu klein, bieten keine "Quickinfos" als Bedienhilfe und es fehlen wichtige Funktionen wie eine Möglichkeit zum Löschen von Datensätzen.

Die kostenlosen SmartTools Navigationsschaltflächen sind eine interessante Alternative, die Sie universell und mit wenig Aufwand in jedem Formular einsetzen können. Sie sind übersichtlich, in verschiedenen Designs verfügbar, bieten zahlreiche Zusatzfunktionen und sind samt Sourcecode und Online-Hilfe zum kostenlosen Download freigegeben:

 Navigationsschaltflächen für Access-Formulare

Techinfo: Access-Datenbanken auf SQL Server übertragen
Versionen: Access 2000, 2002/XP und 2003

Access stellt zwar mit dem Upsizing-Assistenten eine Funktion zur Aufteilung einer Datenbank in Front-End und Back-End mit gleichzeitiger Übertragung der Tabellen auf einen SQL Server zur Verfügung, aber bei komplexen Projekten kommt es immer wieder zu Problemen. Außerdem sind die Möglichkeiten zur Steuerung der Migration beschränkt. Alternativ dazu können die Daten mit den SQL Server Tools (DTS) auf den SQL Server übertragen werden. Wie das genau funktioniert, erläutert ein umfangreiches White Paper der MSDN-Spezialisten:

Access-Datenbanken auf SQL Server übertragen

Die Autoren beschränken sich nicht darauf, den Einsatz der SQL Server Tools zu erläutern, sondern vermitteln zunächst wichtige Grundlagen. Au0erdem geben sie nützliche Tipps und Hinweise beispielsweise zur Wahl der richtigen Datentypen, zur Einrichtung von Beziehungen und referentieller Integrität oder zur Indexierung.

 Access-Tipp der Woche

Memofelder in separatem Fenster bearbeiten, Teil 2
Versionen: Access 97, 2000, 2002/XP und 2003

Für die Bearbeitung von Memofeldinhalten über ein separates Formular gibt es zwei Möglichkeiten: Sie können ein gebundenes oder ein ungebundenes Formular verwenden. Das gebundene Formular nutzt die gleiche Datenbasis, wie das aktuelle Formular, zeigt jedoch nur ein einziges Feld an(das betreffende Memofeld) und wird beim Öffnen auf den aktuell angezeigten Datensatz positioniert. Beim Einsatz eines ungebundenen Formulars wird der Inhalt des Memofeldes aus dem aktuellen Formular in ein Textfeld des "Bearbeitungsformulars" übertragen und nach Abschluss der Bearbeitung wieder zurück in das Memofeld des aktuellen Formulars geschrieben. Und so gehen Sie dazu vor:

  • Deklarieren Sie in einem beliebigen Modul eine globale Variable für den Austausch des Memofeldinhaltes zwischen dem aktuellen und dem Bearbeitungsformular:
Public strMemofeld As String

  • Legen Sie ein neues, leeres Formular ohne Datenbasis an.
  • Stellen Sie die Größe des Detailbereichs auf 12 cm Breite und 8 cm Höhe ein.
  • Wählen Sie Ansicht-Formularkopf/-fuß an, um diese Bereiche einzublenden. Im Formularkopf platzieren Sie ein Bezeichnungsfeld mit einer Überschrift wie beispielsweise "Produktbeschreibung" oder "Besuchsberichte", also entsprechend der Bearbeitung, die hier erfolgt.
  • Legen Sie im Detailbereich ein großes Textfeld "txtMemo" an, in dem später die Bearbeitung des Textes aus dem Memofeld erfolgt.
  • Stellen Sie die Eigenschaften "Eingabetastenverhalten" auf "Neue Zeile im Feld", "Datensatzmarkierer" auf "Nein", "Navigationsschaltflächen" auf "Nein" und "Bildlaufleisten" auf "Vertikal" ein.
  • Legen Sie im Formularfuß zwei Schaltflächen Ok und Abbrechen (Name= btnOK, btnCancel) an.
  • Geben Sie für die Ereignisprozeduren "Beim Klicken" dieser Schaltflächen die folgenden Anweisungen ein:
Private Sub btnOK_Click()

  strMemofeld = Me.txtMemo
  DoCmd.Close acForm, Me.Name, acSavePrompt

End Sub

Private Sub btnCancel_Click()

  strMemofeld = "!"
  DoCmd.Close acForm, Me.Name, acSavePrompt

End Sub

  • Geben Sie für die Ereignisprozedur "Beim Öffnen" des Formulars folgende Anweisung ein:
Private Sub Form_Open(Cancel As Integer)

  Me.txtMemo = strMemofeld

End Sub

  • Speichern Sie das Formular unter dem Namen "Memo bearbeiten" und verlassen Sie den Formularentwurf.
  • Öffnen Sie nun das Formular mit dem Memofeld, dessen Inhalte im separaten Fenster bearbeitet werden sollen, im Entwurfsmodus.
  • Für die Ereignisprozedur "Beim Doppelklicken" des betreffenden Memofeldes geben Sie folgende Anweisungen ein:
Private Sub Produktbeschreibung_DblClick(Cancel As _
                                         Integer)<
  strMemofeld = Me.Produktbeschreibung
  DoCmd.OpenForm "Memo bearbeiten", , , , , acDialog
  If strMemofeld <> "!" Then
    Me.Produktbeschreibung = strMemofeld
  End If
  strMemofeld = ""

End Sub

"Produktbeschreibung" ersetzen Sie dabei durch den Namen des Memofeldes in Ihrem Formular. Alternativ dazu können Sie diese Anweisungen auch für die Ereignisprozedur "Beim Klicken" einer neben dem Memofeld platzierten Schaltfläche eingeben und die Bearbeitung im separaten Formular per Schaltfläche aufrufen.

  • Speichern Sie die Änderungen und testen Sie die Lösung.
Wenn Sie nun einen Doppelklick in das Memofeld ausführen, wird dessen Ereignisprozedur "DblClick" ausgeführt. Die Anweisungen übertragen zunächst den aktuellen Inhalt des Memofeldes in die globale Variable "strMemofeld". Anschließend wird das Formular "Memo bearbeiten" geöffnet. Wichtig ist hier der Parameter "acDialog", der dafür sorgt, dass die weitere Ausführung der Anweisungen erst dann erfolgt, wenn das Formular "Memo bearbeiten" geschlossen wird. Das Formular "Memo bearbeiten" überträgt dann beim Öffnen den Inhalt der globalen Variablen "strMemofeld" in ein Textfeld "txtMemo" zur weiteren Bearbeitung. Bei einem Klick auf Ok im Formular "Memo bearbeiten" wird der geänderte Inhalt zurück in die globale Variable "strMemofeld" übertragen, während bei einem Klick auf Abbrechen der Inhalt von "strMemofeld" auf "!" gesetzt wird. Dieses Zeichen dient uns dann als Kriterium "Abgebrochen oder nicht?" und hat bei '<> "!"' zur Folge, dass der geänderte Inhalt aus der globalen Variablen zurück in das Memofeld geschrieben wird.

Wie Sie Memofeldinhalte in einem gebundenen Formular bearbeiten, ist Inhalt des dritten und letzten Teils dieses Tipps der Woche in der nächsten Ausgabe von Access Weekly.

ANZEIGE 
Das bewährte Verwaltungstool für Multiuser-Datenbanken

Hier ist das Tool, auf das alle Datenbank-Administratoren gewartet haben: Total Access Admin macht die Verwaltung von Multiuser-Datenbanken zum Kinderspiel. Unabhängig davon, ob Access 97, 2000, 2002/XP oder 2003 im Einsatz ist oder alle Versionen parallel genutzt werden - Sie haben die Kontrolle darüber, was mit der Datenbank geschieht:

  • Aktive Anwender anzeigen
  • Verhindern Sie neue Verbindungen zu der Datenbank
  • Inaktive User automatisch abmelden
  • Verdächtige oder abgebrochene Verbindungen finden
  • Mitteilungen an alle angemeldeten Anwender
  • Komfortabler und kostengünstiger Einsatz
Total Access Admin ist das unentbehrliche Tool, wenn Sie Datenbanken im Netzwerk verwalten. Mit wenigen Mausklicks kommen Sie Problemen auf die Spur, bereiten Datenbanken für die Wartung vor und kommunizieren mit allen angemeldeten Anwendern in Echtzeit:

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


 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 Fragen aus und beantwortet Sie an dieser Stelle im Newsletter.

Datenbanken beim Beenden automatisch sichern
Versionen: Access 97, 2000, 2002/XP und 2003

 FRAGE:  Kennen Sie eine Möglichkeit, eine Datenbank automatisch in ein Backup-Verzeichnis zu kopieren, nachdem sie geschlossen wurde?
H.-P. Scholz

 ANTWORT:  In dem Moment, in dem eine Datenbank geschlossen wird, können keine Prozeduren ausgeführt werden. Auch der Trick, entsprechende Anweisungen (FileCopy...) in einem versteckt angezeigten Formular in dessen Ereignisprozedur "Beim Schließen" auszuführen, scheitert, da Access die Datenbank sperrt. Lösen lässt sich diese Aufgabe in einer Kombination aus Batch-Datei und Verknüpfung wie folgt:

  • Öffnen Sie ein DOS-Fenster und geben Sie dort die folgende Anweisung ein:
edit Name.bat

"Name" ersetzen Sie dabei durch einen Namen für die Batch-Datei, also beispielsweise dem Namen der Datenbank. Achtung! Der Name darf maximal 8 Zeichen lang sein!

  • Geben Sie in Edit die folgenden Anweisungen ein:
@echo off
cls
start /w msaccess.exe "Z:\Test\Name.mdb"
copy "Z:\Test\Name.mdb" "Z:\Datsi\Name.mdb"
exit

Pfad und Dateinamen passen Sie entsprechend Ihrer Umgebung an. Auch hier dürfen Dateinamen nicht länger als 8 und Verzeichnisnamen nicht länger als 11 Zeichen sein!

  • Speichern Sie die Batch-Datei und verlassen Sie den Editor.
  • Legen Sie auf dem Desktop eine Verknüpfung zu der eben erstellten Batch-Datei an. Über diese Verknüpfung wird die Datenbank zukünftig per Doppelklick geöffnet.
Der DOS-Befehl "start" führt eine Anwendung, hier "msaccess.exe", aus, wobei der Parameter "/w" (wait, warten...) dafür sorgt, dass die weiteren Anweisungen erst ausgeführt werden, wenn die Anwendung beendet wurde. Nach dem Beenden von Access wird dann per DOS-Befehl "copy" eine Kopie angelegt. Möchten Sie vor der Bearbeitung der Datenbank eine Sicherungskopie anlegen, so drehen Sie die Anweisungen einfach um:

@echo off
cls
copy "Z:\Test\Name.mdb" "Z:\Datsi\Name.mdb"
start msaccess.exe "Z:\Test\Name.mdb"
exit

Der Parameter "/w" ist hier nicht mehr nötig, da die Kopie ja schon erstellt wurde und auf eine Beendigung von Access nicht mehr gewartet werden muss.

Achtung! Der DOS-Befehl "start" steht normalerweise nur unter Windows 9x zur Verfügung. Er wurde von Microsoft aus Windows NT, 2000 und XP verbannt, obwohl er dort einwandfrei funktioniert. Kopieren Sie "start.exe" einfach aus einer alten Windows 9x-Installation (zu finden beispielsweise in C:\Windows\ Command) in das Windows-Verzeichnis der NT-, 2000- oder XP-Installation, damit die oben gezeigte Lösung auch unter diesen Systemen funktioniert.

Access 2.0-Datenbanken konvertieren
Versionen: Access 2.0 und 2002/XP

 FRAGE:  Ich habe immer noch einige Anwendungen in Access 2.0 vorliegen. Nun möchte ich diese Applikation auf mein Access 2002/XP konvertieren. Wie funktioniert das? Bis jetzt ist es mir noch nicht gelungen.
N. Mathis-Kehl

 ANTWORT:  Normalerweise reicht es, die Access 2.0-Datenbank über Datei-Öffnen oder per Doppelklick im Windows-Explorer mit Access 2002/XP zu öffnen. Anschließend sollte dann der Dialog "Datenbank konvertieren/öffnen"-Dialog angezeigt werden. Erfahrungsgemäß klappt die Erkennung aber nur einwandfrei, wenn die Jet Engine Version 3.x installiert ist, die den "Microsoft DAO Version 2.x/3.x Compatibility Layer" zur Verfügung stellt. Die entsprechenden DLLs werden mit der Office XP-Installation eingerichtet, können nun aber auf Ihrem System mit anderen Versionen überschrieben oder beschädigt sein. Führen Sie einmal das Office-Setup aus und wählen Sie dort den Reparaturmodus aus. Eine weitere Ursache dafür, dass der "Datenbank konvertieren/öffnen"-Dialog nicht angezeigt wird, kann ein spezieller Registry-Eintrag sein, den Sie gegebenenfalls löschen müssen:

HKEY_CURRENT_USER\ Software\ Microsoft\
Office\10.0\ Access\ Settings\ NoConvertDialog

ANZEIGE 
So finden Sie Unterschiede zwischen Datenbanken und Datenbank-Objekten

Möchten Sie voll automatisch die Unterschiede in Tabellen, Makros, VBA-Code und beliebigen anderen Access-Objekten finden?

Der Total Access Detective vergleicht beliebige Objekte innerhalb einer Datenbank oder in zwei unterschiedlichen Datenbanken bzw. Access-Projekten.

Der Total Access Detective beantwortet die folgenden Fragen:

  • Welche Datensätze sind neu oder wurden bearbeitet?
  • Gibt es Unterschiede in den Tabellendefinitionen?
  • Wo weichen Abfragen, Formulare oder Berichte voneinander ab?
  • Welchen Zeilen der VBA-Module wurden geändert?
Weitere Informationen finden Sie unter:

Total Access Detective für Access 2002:
http://www.add-in-world.com/katalog/tadetective2002/

Total Access Detective für Access 2000:
http://www.add-in-world.com/katalog/tadetective2000/

Total Access Detective für Access 97:
http://www.add-in-world.com/katalog/ta_detect_8


Zugriffssteuerung über Schreib-/Leserechte
Versionen: Access 97, 2000, 2002/XP und 2003

 FRAGE:  Ich habe eine Access 2002-Anwendung, auf die bestimmte User nur Schreib- beziehungsweise Leserechte haben sollen. Durch die Vergabe von Schreib- beziehungsweise Leserechten auf das Verzeichnis in dem die Anwendung liegt, sollte das Problem gelöst werden. Jetzt scheinen sich die User mit verschiedenen Rechten beim Zugriff auf die Anwendung gegenseitig zu behindern. Es kommt beispielsweise zu den Fehlermeldungen "Datei kann nicht gesperrt werden", "Fehler 3550" oder "Die Datei ist schreibgeschützt". Hat Access grundsätzlich Probleme damit, wenn User mit verschiedenen Rechten parallel mit einer Access-Anwendung arbeiten wollen?
S. Landwehr

 ANTWORT:  Den Zugriff per Rechtevergabe auf diesem Wege zu regeln, wird leider nicht funktionieren. Access legt für jede Datenbank eine "LDB"-Datei an, in der verschiedene Mehrbenutzer-Informationen festgehalten werden. Diese Datei wird beim ersten Zugriff angelegt, bei weiteren Zugriffen aktualisiert und nach der Abmeldung des letzten Users gelöscht. Sämtliche User, die Zugriff auf die Datenbank haben sollen, müssen also Schreib-, Lese-, Änderungs- und Löschrechte (CREATE, READ/WRITE, DELETE) haben. Damit lässt sich die von Ihnen angestrebte Unterteilung nicht realisieren. Aktivieren Sie den Arbeitsgruppen-Modus und ordnen Sie darüber die entsprechenden Zugriffsrechte zu.

 Newsletter-Tipp

Outlook-Tipps kostenlos per E-Mail

SmartTools Outlook Weekly bietet jede Woche Tipps, aktuelle Infos und Download-Links für Outlook 97, 98, 2000, 2002/XP und 2003:

  • Professionelle Tipps zum effektiveren Arbeiten
  • Undokumentierte Parameter
  • Fertige VBA-Prozeduren für neue Funktionen
  • Aktuelle Informationen über Sicherheitslücken, Bugs und Patches
  • Download-Links zu Outlook-Erweiterungen
  • Helpline für Ihre Fragen zu Outlook
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.856 / Virus Database: 583 - Release Date: 07.02.2005