Von: access-weekly-text-request@cgn.smarttools.de im Auftrag von SmartTools Publishing [access-weekly-text-reply@smarttools.de] Gesendet: Mittwoch, 30. März 2005 00:43 An: Access Weekly Abonnenten Betreff: SmartTools Access Weekly vom 30.3.2005 ----------------------------------------------------------- SmartTools Access Weekly vom 30.3.2005 Jede Woche neu: Tipps, News und Problemloesungen rund um Microsoft Access (c) 2005 by SmartTools Publishing ----------------------------------------------------------- +++ IN DIESER AUSGABE +++ ACCESS-NEWS & DOWNLOADS + SPOTLIGHT: OLXTeamOutlook - Outlook-Daten ganz einfach gemeinsam nutzen + DOWNLOAD-TIPP: Ueber 1.000 neue Icons fuer Ihre Symbolleisten in Access + TECHINFO: Kostenloses 'ADO Programmer's Guide' ACCESS-TIPP DER WOCHE + Benutzerdefinierte Eigenschaften von Formularen nutzen, Teil 2 ACCESS-HELPLINE + Bezeichnungsfelder ueber Steuerelementen anlegen + Access-Symbolleisten fest positionieren + NACHTRAG: Staedtenamen in Adressverwaltung per Kombinationsfeld anzeigen NEWSLETTER-TIPP + Excel-Tipps kostenlos per E-Mail Abonnementverwaltung und Copyright +++ ACCESS-NEWS & DOWNLOADS +++ SPOTLIGHT: OLXTeamOutlook - Outlook-Daten ganz einfach gemeinsam nutzen ------------------------------------------------------ Mit der neuesten Generation intelligenter Team-Software fuer Outlook 97, 98, 2000, 2002/XP und 2003 nutzen Sie Ihre Outlook-Daten in Zukunft noch effizienter: + Greifen Sie ab sofort im Team auf Ihre Termine, Aufgaben, Kontakte, E-Mails und Notizen aus Outlook zu. + Richten Sie mit wenigen Mausklicks oeffentliche Ordner fuer Gruppentermine, Raumbelegungen, gemeinsamen Firmenadressen usw. ein oder geben Sie einen oder mehrere Ihrer persoenlichen Ordner mit Terminen, Kontakten, E-Mails etc. fuer andere Anwender frei. + Alle Aenderungen und Neueingaben in den gemeinsamen Ordnern sind immer sofort ohne Verzoegerung in den Ordnern der anderen Teilnehmer sichtbar. + Im nuetzlichen Gruppenkalender sehen Sie jederzeit die Termine aller freigegebenen Kalender im Wochenueberblick. + Sie benoetigen keinen Exchange-Server, sondern lediglich ein freigegebenes Verzeichnis im Netzwerk, auf das alle beteiligten Anwender zugreifen koennen. Dieses Verzeichnis muss sich noch nicht einmal auf einem Server befinden! Jeder beliebige Rechner in Ihrem Netzwerk kann diese Aufgabe uebernehmen + Kinderleichte Installation und Einrichtung. Mit ein paar Mausklicks legen Sie fest, wer bestimmte Ordner zu sehen bekommt und welche Rechte er bei der Bearbeitung hat. Weitere Informationen zu einer der beliebtesten Outlook- Erweiterung finden Sie unter: http://www.add-in-world.com/katalog/olxteamoutlook/ DOWNLOAD-TIPP: Ueber 1.000 neue Icons fuer Ihre Symbolleisten in Access ----------------------------------------------- Sie suchen nach aussagekraeftigen Icons fuer Ihre selbst definierten Symbolleisten? Die standardmaessig von Access angebotene Auswahl ist sehr bescheiden und so muessen Sie schon selber kuenstlerisch taetig werden, um zum Ziel zu kommen. "SmartTools Iconhelp" hilft weiter: In Access finden Sie ueber 1.000 verschiedenen Schaltflaechen-Symbole, die Sie mit unserem kostenlosen Tool uebersichtlich anzeigen und durchblaettern koennen. Moechten Sie eines der Icons nutzen, klicken Sie es einfach an, rufen das Kontextmenue SYMBOL IN ZWISCHENABLAGE KOPIEREN auf und weisen es dann Ihrer eigenen Schaltflaeche zu. Der besondere Bonus fuer VBA-Entwickler: "SmartTools Iconhelp"- zeigt auch die "FaceID" zu jedem Symbol an, die Sie fuer die programmatische Erstellung von Symbolleisten per Makro benoetigen: http://www.add-in-world.com/katalog/ac-iconhelp/ TECHINFO: Kostenloses 'ADO Programmer's Guide' ---------------------------------------------- Mit dem "ADO Programmer's Guide" stellen die MSDN- Spezialisten ein umfangreiches White Paper fuer Datenbank- Entwickler zum kostenlosen Abruf bereit. Das White Paper erlaeutert zunaechst die Grundlagen von ADO und zeigt an verschiedenen Beispielen den Zugriff auf unterschiedliche Datenquellen. Weitere Abschnitte widmen sich Spezialthemen wie dem Zugriff auf entfernte Daten beispielsweise ueber das Internet oder auf verteilte Daten, die auf mehreren Servern abgelegt sind. Den Abschluss bilden ausfuehrliche Erlaeuterungen zum Thema "Sicherheit". Hier erfahren Sie unter anderem alles ueber Zugriffsrechte, geschuetzten Verbindungsaufbau und sichere Datenuebertragung: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/ado270/htm/mdmscadoprogrammersguide.asp +++ ACCESS-TIPP DER WOCHE +++ Benutzerdefinierte Eigenschaften von Formularen nutzen, Teil 2 -------------------------------- Versionen: Access 97, 2000, 2002/XP und 2003 In der letzten Ausgabe hatten wir Ihnen gezeigt, wie Sie mit Hilfe einer per "Property Get" deklarierten Eigenschaft eine komplette Adresse aus einem Formular auslesen und so den umstaendlichen Zugriff auf mehrere Felder vermeiden koennen. Aehnlich einfach koennen Sie mit einer "Property Let"- Prozedur zwei Formulare durch eine simple Zuweisung synchronisieren. Zum Beispiel: Fuer die Aufnahme von Bestellungen haben Sie zwei Formulare "Bestellungen" und "Kunden" geoeffnet. Im Formular "Bestellungen" ordnen Sie die Adresse eines Kunden zu. Um weitergehende Informationen wie zum Beispiel Rabatte oder Hinweise zu Lieferungsmodalitaeten zum Kunden abzurufen, wechseln Sie zum Formular "Kunden" und positionieren dort beispielsweise ueber die Suchfunktion auf den betreffenden Datensatz. Diese Positionierung soll nun automatisiert werden. Zur Verdeutlichung bedienen wir uns wieder der Beispieldatenbank "Nordwind": 1. Oeffnen Sie das Formular "Kunden" im Entwurfsmodus, wechseln Sie in die VBA-Entwicklungsumgebung und setzen Sie ueber EXTRAS-VERWEISE eine Referenz auf "Microsoft DAO Object Library 3.x". 2. Geben Sie im allgemeinen Teil den folgenden Code ein: Private m_KundenCode As String Public Property Let AnzeigenKundenCode( _ strKundenCode As String) Dim rs As DAO.Recordset m_KundenCode = strKundenCode Set rs = Me.RecordsetClone rs.FindFirst "[Kunden-Code]= '" & strKundenCode & "'" Me.Bookmark = rs.Bookmark Set rs = Nothing End Property Public Property Get AnzeigenKundenCode() As String AnzeigenKundenCode = m_KundenCode End Property Mit diesen Anweisungen wurde eine Eigenschaft "AnzeigenKundenCode" deklariert, der nicht nur ein Wert zugewiesen werden kann (Property Let, zum Beispiel Forms("Kunden").AnzeigenKundenCode = "ABCDE"), sondern die gleichzeitig auch den aktuell gesetzten Wert als Ergebnis einer Abfrage liefert (Property Get, beispielsweise strKundenCode = Forms("Kunden").AnzeigenKundenCode). Der jeweils gesetzte Wert wird in der globalen Variablen "m_KundenCode" festgehalten bzw. von dort ausgelesen. Damit diese Informationen auch nach einem manuellen Datensatzwechsel im Formular "Kunden" aktuell sind, ergaenzen Sie die Ereignisprozedur "Beim Anzeigen (Form_Current) noch um folgende Anweisung: m_KundenCode = Me.Kunden_Code 3. Speichern Sie die Aenderungen, lassen Sie das Formular anzeigen und minimieren Sie es. 4. Oeffnen Sie das Formular "Bestellungen" in der Entwurfsansicht. 5. Markieren Sie das Kombinationsfeld "Rechnung an" (Name= "Kunden-Code"), klicken Sie auf die Schaltflaeche mit den drei Punkten hinter der Eigenschaft "Nach Aktualisierung" und fuegen Sie als erste und letzte Anweisung folgende Zeilen ein: 1. Zeile On Error Resume Next Letzte Zeile: Forms("Kunden").AnzeigenKundenCode = _ Me![KundenCode].Column(0) 6. Stellen Sie die Eigenschaft "Beim Anzeigen" des Formulars auf "[Ereignisprozedur]" ein, klicken Sie auf die Schaltflaeche mit den drei Punkten und geben Sie hier die folgenden Anweisungen ein: Private Sub Form_Current() On Error Resume Next Forms("Kunden").AnzeigenKundenCode = _ Me![KundenCode].Column(0) End Sub 7. Speichern Sie die Aenderungen und lassen Sie das Formular anzeigen. 8. Blenden Sie das Formular "Kunden" wieder ein und positionieren Sie beide Formulare so, dass Sie bei Eingaben/Aenderungen in "Bestellungen" die Adresse in "Kunden" sehen koennen. Wenn Sie nun in "Bestellungen" durch die Datensaetze blaettern, aendert sich automatisch die Anzeige der Adresse im Formular "Kunden". Gleiches passiert, wenn Sie in einem vorhandenen oder in einem neuen Datensatz des Formulars "Bestellungen" die Einstellung im Kombinationsfeld "Rechnung an" aendern. Dazu lesen wir jeweils die Spalte "0" des Kombinationsfeldes "Kunden-Code" aus, die den fuenfstelligen Kundencode liefert. Diesen weisen wir dann der Eigenschaft "AnzeigenKundenCode" des Formulars "Kunden" zu. Die Zuweisung aktiviert die "Property Let"-Prozedur, die zunaechst per "RecordsetClone" eine Kopie der Datenbasis des Formulars im Recordset "rs" erzeigt. Darin wird dann per "FindFirst" nach dem uebergebenen Kundencode gesucht. Die Zuweisung "Me.Bookmark = rs.Bookmark" sorgt dann dafuer, dass das Formular auf den betreffenden Datensatz positioniert wird. Um eine derartige Loesung in eigenen Datenbanken einzusetzen, verwenden Sie anstelle von "KundenCode" das Primaerschluesselfeld des Formulars, das Komplettinformationen anzeigen soll und setzen die notwendige Information fuer die Synchronisierung im damit korrespondierenden Formular entsprechend. Fuer die Kombination "Artikel" und "Lieferanten" waere das beispielsweise das Feld "Lieferanten-Nr", das Sie im Formular "Artikel" aus der Spalte "0" des Kombinationsfeldes "Lieferant" (Name= LieferantenNr) auslesen koennen. ++++++++++++++++ ANZEIGE ++++++++++++++++ Resizer und andere neue Steuerelemente fuer Access -------------------------------------------------- Die Total Access Components sind eine umfangreiche Sammlung neuer Steuerelemente fuer Ihre Formulare und Berichte. Das absolute Highlight: Der "Resizer" loest fuer Sie die Probleme mit unterschiedlichen Bildschirmaufloesungen. Sie entwerfen nur noch ein Formular und platzieren darauf den Resizer. In Zukunft vergroessert oder verkleinert der Resizer fuer Sie saemtliche Steuerelemente proportional zur aktuellen Bildschirmaufloesung! Ausserdem in dem Paket: + Schaltflaechen mit Grafiken + komfortablen Eingabehilfen + grafische Statusanzeigen + digitale und analoge Uhren + neue 3D- und Animationseffekte + Post-It's, Taschenrechner, Multimedia-Controls u.v.m. Weitere Informationen finden Sie unter: fuer Access 2000, 2002/XP und 2003: http://www.add-in-world.com/katalog/tacomponents2003/ fuer Access 97: http://www.add-in-world.com/katalog/ta_components8/ +++++++++++++++++++++++++++++++++++++++++ +++ ACCESS-HELPLINE +++ Haben Sie Fragen zu Access 97, 2000, 2002/XP oder 2003? Dann wenden Sie sich mit einer genauen Problembeschreibung (bitte keine Datenbanken schicken!) an: mailto:access-helpline@smarttools.de Unser Redaktionsteam waehlt in jeder Ausgabe eine oder mehrere Fragen aus und beantwortet Sie an dieser Stelle im Newsletter. Bezeichnungsfelder ueber Steuerelementen anlegen ------------------------------------------------ Versionen: Access 97, 2000, 2002/XP und 2003 FRAGE: Wenn ich ein neues Textfeld, Listenfeld, Kombinationsfeld oder sonstige Steuerelement anlege, das automatisch mit einem Bezeichnungsfeld versehen ist, wird das Bezeichnungsfeld immer links neben dem jeweiligen Steuerelement positioniert. Ich moechte die Bezeichnungsfelder aber gerne standardmaessig linksbuendig ueber dem Steuerelement positionieren. Ist das irgendwie moeglich? R. Huels ANTWORT: Die fuer diese Positionierung zustaendigen Einstellungen koennen Sie fuer ein Formular individuell wie folgt aendern: 1. Oeffnen Sie das Formular, dessen Einstellungen fuer die Positionierung von Bezeichnungsfeldern geaendert werden sollen, im Entwurfsmodus. 2. Stellen Sie sicher, dass im Formular nichts markiert ist. 3. Waehlen Sie das Menue ANSICHT-EIGENSCHAFTEN an. 4. Klicken Sie nun in der Toolbox auf das Symbol fuer das Steuerelement, fuer das Sie die Positionierung der Bezeichnungsfelder aendern moechten, also beispielsweise auf das Textfeld-Symbol. 5. Die Titelleiste des Eigenschaftenfensters aendert sich nun zum Beispiel auf "Standard: Textfeld". 6. Scrollen Sie ganz an das Ende der Liste - hier finden Sie die zwei Eigenschaften "Bezeichnungsfeld X" und "Bezeichnungsfeld Y". 7. Ueber "Bezeichnungsfeld X" legen Sie fest, mit welchem Abstand zum linken Rand des Steuerelementes das Bezeichnungsfeld angelegt werden soll. Vorgabe ist hier beispielsweise "- 3 cm", das Bezeichnungsfeld wird also ausgehend vom linken Rand des Steuerelementes 3 cm davor positioniert. 8. Ueber "Bezeichnungsfeld Y" legen Sie fest, mit welchem Abstand zum oberen Rand des Steuerelementes das Bezeichnungsfeld angelegt werden soll. Die Vorgabe ist hier "0 cm", das Bezeichnungsfeld wird also so positioniert, dass sein oberer Rand mit dem oberen Rand des Steuerelementes buendig abschliesst. 9. Um das Bezeichnungsfeld ueber dem jeweiligen Steuerelement anzeigen zu lassen, setzen Sie "Bezeichnungsfeld X" auf "0 cm", damit die Felder linksbuendig untereinander positioniert werden. "Bezeichnungsfeld Y" ist auf "0,5 cm" zu setzen. Mit dieser Einstellung muessen Sie ein wenig experimentieren, bis der richtige Wert gefunden ist, da beispielsweise Schriftart und Schriftgroesse eine Rolle spielen. Diese Aenderungen muessen Sie fuer jedes Formular, fuer das sie gelten sollen, separat vornehmen, eine globale Aenderung ist leider nicht moeglich. Access-Symbolleisten fest positionieren --------------------------------------- Versionen: Access 97, 2000, 2002/XP und 2003 FRAGE: Beim Einsatz benutzerdefinierter Symbolleisten erscheinen die eingebauten Symbolleisten von Access bei jedem Start an anderen Positionen. Laesst sich das irgendwie aendern? K. Manthei ANTWORT: Dieses Verhalten koennen Sie Access relativ einfach abgewoehnen: 1. Blenden Sie zunaechst die eigene Symbolleiste aus und ordnen Sie die Access-Symbolleiste wie gewuenscht an. 2. Klicken Sie dann mit der rechten Maustaste auf die Symbolleiste und waehlen Sie das Kontextmenue ANPASSEN an. 3. Wechseln Sie auf die Registerkarte "Symbolleisten". 4. Markieren Sie in der Liste SYMBOLLEISTEN die betreffende Symbolleiste, also beispielsweise "Formularansicht". 5. Klicken Sie auf die Schaltflaeche EIGENSCHAFTEN rechts von der Liste. 6. Deaktivieren Sie die Option VERSCHIEBEN ZULASSEN. 7. Uebernehmen Sie die Aenderungen mit einem Klick auf OK. 8. Blenden Sie die benutzerdefinierte Symbolleiste wieder ein und positionieren Sie sie wie gewuenscht. ++++++++++++++++ ANZEIGE ++++++++++++++++ Barcodes komfortabel mit Access ausgeben ---------------------------------------- Barcode fuer Windows ist ein Komplettpaket zum Erstellen von Barcodes in Access, Excel und Word. Sie erhalten TrueType- Schriften sowie ein leistungsfaehiges Programm zur Berechnung der Pruefziffern, das Sie komfortabel bedienen oder aus den Office-Applikationen heraus steuern koennen. Alle gaengigen Barcodes sind enthalten. Unter anderem: + Code EAN 13, EAN 8, Addon -2 und -5, EAN Velocity + Code 128, EAN128, UPS128 + Code 39, -extended, PZN + 2/5 Interleaved, 2/5 Industrie + Leit- und Identcode der Post Weitere Informationen finden Sie unter: http://www.add-in-world.com/katalog/barcode/ +++++++++++++++++++++++++++++++++++++++++ NACHTRAG: Staedtenamen in Adressverwaltung per Kombinationsfeld anzeigen ------------------------------------------ Versionen: Access 97, 2000, 2002/XP und 2003 Zu diesem Beitrag hat uns die folgende Zuschrift von Access Weekly-Leser Oliver Buehler erreicht: Zum Tipp "Staedtenamen in Adressverwaltung per Kombinationsfeld anzeigen" gibt es die folgende alternative Loesung: Entsprechend Ihrer Anleitung eine Abfrage erstellen. Statt jedoch die Funktion "Gruppierung" zu verwenden, ueber das Eigenschafts-Fenster den Wert "Keine Duplikate" auf JA setzen. In SQL wird somit aus SELECT eine SELECT DISTINCT-Anweisung: SELECT tbl_Kunden.Ort FROM tbl_Kunden GROUP BY tbl_Kunden.Ort HAVING (((tbl_Kunden.Ort) Is Not Null)) ORDER BY tbl_Kunden.Ort; SELECT DISTINCT tbl_Kunden.Ort FROM tbl_Kunden WHERE (((tbl_Kunden.Ort) Is Not Null)) ORDER BY tbl_Kunden.Ort; +++ 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 97, 2000, 2002/XP und 2003 liefert: + Neue Rechenfunktionen fuer Ihre Tabellen + Nuetzliche VBA-Prozeduren + Undokumentierte Parameter und Funktionen + Infos zu Bugs und Patches + Wichtige Download-Links + Helpline fuer Ihre Fragen zu Excel Bestellen Sie jetzt Ihr kostenloses Abo: http://www.smarttools.de/newsletter/excel-weekly.newsletter.php +++ ABONNEMENTVERWALTUNG +++ Um SmartTools Access Weekly abzubestellen, senden Sie das Kommando "unsubscribe" im Bodytext (nicht im Betreff!) einer E-Mail an die folgende Adresse: mailto:access-weekly-text-request@smarttools.de Bitte beachten Sie, dass die unsubscribe-Mail nicht im HTML-Format geschrieben sein darf! Stellen Sie Ihren E-Mail- Client gegebenenfalls auf das Format "Nur Text" um.Weitere Informationen zur Verwaltung der Liste erhalten Sie mit dem Kommando "help" an dieselbe Adresse. ------------------------------------------------------ (c)2005 by SmartTools Publishing Thomas Tai Luisenstrasse 52, 49565 Bramsche Telefon: 05461/9952-0, Fax: 05461/2609 E-Mail: mailto: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