Von: access-weekly-html-request@cgn.smarttools.de im Auftrag von SmartTools Publishing [access-weekly-html-reply@smarttools.de]
Gesendet: Freitag, 10. Juni 2005 00:49
An: Access Weekly Abonnenten
Betreff: SmartTools Access Weekly vom 10.6.2005

Ausgabe vom 10. Juni 2005

 In dieser Ausgabe

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

Spotlight: Das perfekte 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 2003, 2002/XP, 2000 und 97 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:

Total Access Admin

Download-Tipp: Der komfortable Popup-Taschenrechner für Ihre Formulare

In Ihren Formularen müssen Sie immer wieder kleine individuelle Berechnungen durchführen, für die keine festen Formeln eingesetzt werden können. Es bleibt also nur der Umweg über einen Taschenrechner, in den Sie die Berechnung eingeben, das Ergebnis ablesen und dann in das Formular übertragen. Unsere fertige Lösung hilft weiter: Nutzen Sie den fertigen Popup-Taschenrechner, um Ihre Formulare in Zukunft noch komfortabler zu machen.

Ein Mausklick genügt und der Taschenrechner steht Ihnen sofort zur Verfügung. Der aktuelle Feldinhalt wird automatisch übertragen, Sie nehmen die gewünschte Berechnung vor und übertragen das Ergebnis dann mit einem weiteren Mausklick wieder in das Formular. Die kostenlose Lösung samt Anleitung finden Sie unter:

 Popup-Taschenrechner für Access

Techinfo: Access-Datenbanken mit FrontPage einsetzen
Versionen: FrontPage/Access 2000, 2002/XP und 2003

Beim Thema "Webseiten mit Datenbank-Anbindung" denken viele Webmaster sofort an SQL Server, ASP und komplexes Scripting. Dass eine solche Realisierung weitaus einfacher als zunächst angenommen ist, zeigt das folgende White Paper:

Access-Datenbanken mit FrontPage einsetzen

Die Spezialisten von "FrontPage HowTo" demonstrieren an einem einfachen Beispiel, dass für eine solche Lösung nicht einmal Datenbank- geschweige denn ASP- oder Scripting-Kenntnisse notwendig sind: Sie erstellen einfach ein Formular mit den FrontPage-Werkzeugen, platzieren die gewünschten Felder und stellen diese so ein, dass deren Inhalte in einer Access-Datenbank gespeichert werden. Das Anlegen der Datenbank und den Einbau der ASP-Anweisungen für den Zugriff übernimmt FrontPage automatisch.

 Access-Tipp der Woche

Schriftartenauswahl leicht gemacht, Teil 3
Versionen: Access 2003, 2002/XP, 2000 und 97

Im zweiten Teil dieses Tipps der Woche hatten wir an einem einfachen Beispiel gezeigt, wie eine Schriftartenauswahl über ein Listen- oder Kombinationsfeld mit Hilfe der CallBack-Funktion "FontListCallback()"realisiert wird, die die per "CreateFontList()" ausgelesenen Schriftnamen zeilenweise als Einträge für die Auswahl liefert. Darauf aufbauend können Sie eine Lösung erstellen, die mit wenigen Mausklicks die Schriftart für ein komplettes Formular automatisch umstellt:

  • Legen Sie in einem neuen Formular ein Listenfeld "lstFormulare" an, dessen Eigenschaft "Datensatzherkunft" Sie auf die folgende SQL-Anweisung setzen:
SELECT MSysObjects.Name FROM MSysObjects WHERE
(((Left$([Name],1))<>"~") AND
((MSysObjects.Type)=-32768));

  • Stellen Sie die Eigenschaft "Mehrfachauswahl" auf "Erweitert" ein.
Diese Liste zeigt nun alle verfügbaren Formulare der Datenbank an.

  • Legen Sie ein Kombinationsfeld "clFontName" an.
  • Stellen Sie dessen Eigenschaft "Herkunftstyp" auf "FontListCallback" ein. Den Inhalt der Eigenschaft "Datensatzherkunft" löschen Sie.
In diesem Listen- oder Kombinationsfeld werden nun alle verfügbaren Schriften zur Auswahl angezeigt.

  • Legen Sie eine Schaltfläche Ändern (Name= btnDoIt) an und geben Sie für die Ereignisprozedur "Beim Klicken" die folgenden Anweisungen ein:
Private Sub btnDoIt_Click()
  Dim strForm As String
  Dim F As Form
  Dim varSelected As Variant
  Dim ctl As Control

  On Error Resume Next
  If Me.lstFormulare.ItemsSelected.Count = 0 Then
    Beep
    Exit Sub
  End If

  For Each varSelected In Me.lstFormulare.ItemsSelected
    strForm = Me.lstFormulare.ItemData(varSelected)
    DoCmd.OpenForm strForm, acViewDesign, _
          , , , acHidden
    Set F = Forms(strForm)
    For Each ctl In F.Controls
      ctl.FontName = Me.clFontName
    Next ctl
    DoCmd.Close acForm, strForm, acSaveYes
  Next varSelected

  Beep
  MsgBox "Markierte Formulare wurden geändert...", _
  vbOKOnly + vbInformation, "Schriftart anpassen:"

End Sub

Nach Auswahl eines oder mehrerer Formulare und einer Schriftart sowie einem Klick auf Ändern öffnet die Ereignisprozedur das jeweilige Formular versteckt im Entwurfsmodus, geht in einer Schleife alle darin enthaltenen Steuerelemente durch und setzt dessen Eigenschaft "FontName" auf die ausgewählte Schriftart. Anschließend wird das Formular geschlossen und automatisch gespeichert.

Ähnlich hilfreich können Sie die von "CreateFontList()" erzeugte Schriftartenliste auch mit Berichten einsetzen: Bei der Entwicklung Ihrer Datenbanken müssen Sie beispielsweise regelmäßig die Gestaltung von Berichten mit dem Fachbereich oder Ihren Kunden abstimmen. Dabei ist auch immer die Frage nach der zu verwendenden Schriftart zu klären. Dazu wäre ein kleiner Katalog mit Mustern der verfügbaren Schriftarten recht praktisch. Basierend auf den im ersten Teil dieses Tipps der Woche vorgestellten Basisroutinen können Sie eine Lösung realisieren, die einen Bericht beim Öffnen so manipuliert, dass automatisch die verfügbaren Schriftarten ausgegeben werden.

Basis der Lösung ist eine im ersten Schritt anzulegende Tabelle "tblFontList" mit den Feldern "Mustertext" und "Schriftart", deren Eigenschaft "Feldgröße" Sie jeweils auf "250" einstellen. Diese Tabelle liegt einem Bericht "Schriftartenmuster" zugrunde, in dessen Detailbereich Sie die Felder "Schriftart" und "Mustertext" platzieren. Beim Öffnen des Berichtes wird eine Funktion "CreateFontTable()" aufgerufen, die über "CreateFontList()" die Namen verfügbarer Schriftarten ermittelt und pro verfügbarer Schriftart den Namen nebst einem Mustertext in die Tabelle "tblFontList" schreibt. Diese Funktion fügen Sie zu dem im ersten und zweiten Teil aufgebauten Modul "modFontList" hinzu:

Function CreateFontTable() As Integer
  Dim db As DAO.Database
  Dim rs As DAO.Recordset
  Dim R As Variant, I As Integer

  CreateFontTable = 0
  DoCmd.SetWarnings False
  DoCmd.RunSQL "delete * from tblFontList", False
  DoCmd.SetWarnings True

  R = CreateFontList()
  If R = 0 Then
    Beep
    MsgBox "Schriftarten konnten nicht " & _
           "ausgelesen werden..."
    Exit Function
  Else
    CreateFontTable = R
  End If

  Set db = CurrentDb()
  Set rs = db.OpenRecordset("tblFontList", dbOpenDynaset)
  For I = 1 To R
    rs.AddNew
    rs("Mustertext") = _
       "Franz jagt im komplett verwahrlosten Taxi " & _
       "quer durch Bayern - äöü ÄÖÜ ß € - 1234567890"
    rs("Schriftart") = Trim$(arrFontNames(I))
    rs.Update
  Next I
  rs.Close
  DoEvents

End Function

Setzen Sie anschließend über Extras-Verweise eine Referenz auf "Microsoft DAO 3.6 Object Library" (ab Access 2000) beziehungsweise auf "Microsoft DAO 3.6 Object Library" (Access 97). Die Funktion löscht zunächst den Inhalt der Tabelle "tblFontList". Anschließend ruft sie "CreateFontList()" auf, um die Namen verfügbarer Schriftarten in das globale Array "arrFontNames()" zu übertragen. Von dort aus werden die Namen dann in die Tabelle geschrieben. Die Datenbasis für den Bericht bilden genau so viele Datensätze, wie Schriftarten auf dem System vorhanden sind. Der Aufruf erfolgt, wie bereits erwähnt, beim Öffnen des Berichtes:

Private Sub Report_Open(Cancel As Integer)
  Dim R As Variant

  R = CreateFontTable()

End Sub

Bei der Ausgabe muss jetzt nur noch dafür gesorgt werden, dass das Feld "Mustertext" in der dazugehörigen Schriftart formatiert wird. Das lässt sich über die Ereignisprozedur "Beim Formatieren" des Detailbereiches erledigen:

Private Sub Detailbereich_Format(Cancel As Integer, _
                                 FormatCount As Integer)

  On Error Resume Next
  Me.Mustertext.FontName = Me.Schriftart

End Sub

Der Eigenschaft "FontName" des Feldes mit dem Mustertext wird hiermit bei jedem Datensatz der Name der jeweiligen Schriftart zugewiesen und der Mustertext somit in dieser Schriftart ausgegeben. Der Mustertext enthält nicht nur Buchstaben und Zahlen, sondern auch Sonderzeichen wie Umlaute und das Eurozeichen. So können Sie erkennen, ob eine bestimmte Schriftart benötigte Sonderzeichen unterstützt und Probleme bereits im Vorfeld vermeiden. Darüber hinaus hilft Ihnen diese Übersicht dabei, Symbolschriftarten gleich auszuklammern oder spezielle Symbolschriften beispielsweise für die Ausgabe mathematischer oder technischer Formeln zu finden.

ANZEIGE 
Professionelle Geschäftsgrafiken in TV-Qualität für Excel und PowerPoint

Endlich professionelle Geschäftsgrafiken in Ihren Excel-Tabellen und PowerPoint-Präsentationen!

  • Amigo 2000 ist eine leistungsfähige Office-Erweiterung, die Ihnen mit minimalem Aufwand die Erstellung verblüffender Diagramme in perfekter Qualität ermöglicht.
  • Per Mausklick wird das komplette Diagramm neu berechnet und erscheint dann in einem 3D-Look, den Sie sonst nur aus Zeitschriften oder den Fernsehnachrichten kennen.
  • Sie benötigen keine spezielle 3D-Grafikkarte, sondern können das Programm auf jedem System nutzen, auf dem auch Excel oder PowerPoint in den Versionen 2003, 2002/XP, 2000 oder 97 im Einsatz sind.
  • Empfohlen von PC Professionell und c't
Ausführliche Informationen und viele Beispiele finden Sie unter:

Geschäftsgrafiken in TV-Qualität


 Access-Helpline

Haben Sie Fragen zu Access 2003, 2002/XP, 2000 und 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 eine oder mehrere Fragen aus und beantwortet Sie an dieser Stelle im Newsletter.

Standardeinstellungen für neue Steuerelemente
Versionen: Access 2003, 2002/XP, 2000 und 97

 FRAGE:  Beim Entwurf von Formularen muss ich zum Beispiel bei Bezeichnungsfeldern jedes Mal die Ausrichtung auf "Rechtsbündig" oder die Schrift für verschiedene Steuerelemente (Felder, Listen etc.) auf unsere Hausschrift "Gill Sans" einstellen. Dadurch geht viel Zeit verloren. Kann man in Access Standards für Steuerelemente definieren?
T. Berg

 ANTWORT:  Um die Standardwerte für einen Steuerelemente-Typ, beispielsweise für ein Bezeichnungsfeld, zu setzen, gehen Sie wie folgt vor:

  1. Öffnen Sie ein beliebiges Formular im Entwurfsmodus.
  2. Markieren Sie das Steuerelement "Bezeichnungsfeld" in der Toolbox.
  3. Wählen Sie das Menü Ansicht-Eigenschaften an.
Access zeigt daraufhin ein Eigenschaftenfenster mit dem Titel "Standard: Bezeichnungsfeld" an. Alle Einstellungen, die Sie jetzt vornehmen, werden zukünftig für neue Bezeichnungsfelder verwendet. Wenn Sie hier also als Schrift "Gill Sans" und als Ausrichtung "Rechtsbündig" einstellen und später ein neues Bezeichnungsfeld anlegen, sind diese Eigenschaften hier automatisch vorgegeben. Auf diese Art können Sie für alle Steuerelemente wie Schaltflächen Listen, Kombinationsfelder etc. die gewünschten Standards setzen. Das Ganze funktioniert übrigens auch in Berichten.

Startmodus von Access abfragen
Versionen: Access 2003, 2002/XP, 2000 und 97

 FRAGE:  Ich muss in meiner Datenbank erkennen können, ob die Datenbank von einem Anwender "normal" zur Bearbeitung geöffnet wurde oder ob eine andere Anwendung per Office Automatisch auf die Datenbank zugreift. Kann man das irgendwie abfragen?
V. Petzel

 ANTWORT:  Das Application-Objekt stellt dazu die Eigenschaft "UserControl" zur Verfügung. Ist diese Eigenschaft "True", so wurde die Datenbank "manuell", also beispielsweise per Doppelklick über den Windows-Explorer oder über das Menü Datei-Öffnen geöffnet. Ist die Eigenschaft "False", erfolgt der Zugriff auf die Datenbank entweder über Office Automation oder per DDE.

ANZEIGE 
Serienmails jetzt ganz einfach und komfortabel mit Word verschicken

Ab sofort können Sie Angebote, Preislisten, Newsletter, Ankündigungen usw. direkt aus Word per E-Mail verschicken. Der SmartTools Serienmailer ist in Word integriert und mit wenigen Mausklicks startbereit:

  1. Das Anschreiben für Ihre Serien-E-Mail erstellen Sie genau wie einen ganz normalen Serienbrief in Word. Für Namen und Adressen stehen Ihnen sämtliche von Word unterstützten Formate zur Verfügung: Word-Tabelle, Excel, Access, Outlook, SQL-Server usw.
  2. Sie starten den SmartTools Serienmailer aus dem Menü Extras und legen hier das Feld mit der E-Mail-Adresse sowie den Betreff fest. Auf Wunsch können Sie sogar einen oder mehrere Anhänge auswählen, die mit dem Anschreiben verschickt werden sollen.
  3. Klicken Sie auf Serienmails senden und der Assistent verschickt voll automatisch eine personalisierte Mail an jeden Empfänger aus der von Ihnen vorgegebenen Liste.
Die wichtigsten Highlights:

  • Keine Bindung an Outlook: Das eingesetzte Mailprogramm spielt keine Rolle und daher erscheinen keine lästigen Sicherheitsmeldungen.
  • Individueller Einzelversand: Jeder Empfänger erhält eine Mail mit Anrede und beliebigen anderen individuellen Informationen. Für keinen Empfänger sind die übrigen Adressaten Ihrer Mail erkennbar!
  • Komfortable Gestaltung Ihrer Mails: Verwenden Sie die gewohnten Word-Funktionen zur Formatierung der Anschreiben. Die Umwandlung in eine HTML-Mail erfolgt automatisch.
Der SmartTools Serienmailer kann zurzeit mit noch 20% Rabatt auf den Listenpreis bestellt werden:

SmartTools Serienmailer


Access-Fenster immer maximiert anzeigen
Versionen: Access 2003, 2002/XP, 2000 und 97

 FRAGE:  Access "merkt" sich ja beim Beenden Größe und Position seines Anwendungsfensters und stellt Größe und Position beim nächsten Start automatisch wieder her. Das führt bei unseren Datenbanken recht häufig dazu, dass die per "AutoExec" geöffneten und positionierten Formulare teilweise nicht komplett angezeigt werden, weil der Anwender das Access-Fenster vor dem letzten Beenden recht klein eingestellt hatte. Gibt es eine Möglichkeit, das Access-Fenster generell maximiert anzeigen zu lassen? A. Grauert

 ANTWORT:  Geben Sie zunächst im allgemeinen Teil eines neuen oder vorhandenen Moduls die folgenden Deklarationen ein:

Public Const SW_MAXIMIZE = 3

Function ShowWindow _
         Lib "user32" (ByVal hWnd As Long, _
                       ByVal nCmdShow As Long) As Long

Geben Sie dann die folgende Funktion ein:

Function MaximizeAccWindow()

  ShowWindow Application.hWndAccessApp, SW_MAXIMIZE

End Function

Legen Sie schließlich ein Makro "AutoExec" mit der folgenden Aktion an oder fügen Sie in einem vorhandenen Makro diese Aktion als erste ein:

Aktion: AusführenCode
Funktion: MaximizeAccWindow()

Damit ist nun sichergestellt, dass beim Start von Access zunächst das Anwendungsfenster auf volle Bildschirmgröße gesetzt wird.

 Newsletter-Tipp

Excel-Tipps kostenlos per E-Mail

SmartTools Excel Weekly ist ein kostenloser E-Mail-Newsletter, der Ihnen jede Woche interessante Tipps rund um Excel 2003, 2002/XP, 2000 und 97 liefert:

  • Neue Rechenfunktionen für Ihre Tabellen
  • Nützliche VBA-Prozeduren
  • Undokumentierte Parameter und Funktionen
  • Infos zu Bugs und Patches
  • Wichtige Download-Links
  • Helpline für Ihre Fragen zu Excel
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/