Wahllos einige kleine Tipps rund um VBA in MS Access.
Wenn man in einem Formular einen Datensatz weiterverabreiten will (zB. Ausdrucken) muss man die Daten zuerst speichern
DoCmd.RunCommand acCmdSaveRecord
Arebitet man SQL-Strings und Datum, so muss das Datum zuerst in das richtige Format gebracht werden, damit MS Access SQL dies auch als Datum auswerten kann
Format(Date, "\#mm\/dd\/yyyy\#") 'ergibt #02/23/2010#
In einem Projekt wo die Daten in einer Oracle-DB gespeichert sind und Access nur dazu da ist, die (M)Views in Exceldateien zu dumpen, habe ich sehr viele gelnkte Views. Diese Views interesseiren mich beim Entwickeln im Access nicht weiter. Gepflegt werden sie in Oracle. Aber mir hat es den ganzen Objektbrowser zugemüllt. Darum habe ich mal schnell eine Funktion geschrieben um genaue diese auszublenden.
'/** ' * Alle gelinkten Views ond MViews ausblenden ' * @param <Boolean> Flag ob ein- oder ausblenden. TRUE = ausblenden ' */ Public Sub hideLinkedViews(Optional fHidden As Boolean = True) Dim sql As String Dim rs As DAO.Recordset sql = "SELECT name FROM msysobjects WHERE type = 4" Set rs = CurrentDb.OpenRecordset(sql) rs.MoveFirst Do While Not rs.EOF And Not rs.BOF 'Nur ausblenden wenn es keine gelinkte Tabelle ist. Diese enthalten meistens für das GUI 'relevante Angaben If Not rs!Name Like "TBL_*" Then Call Application.SetHiddenAttribute(acTable, rs!Name, fHidden) End If rs.MoveNext Loop Call rs.Close Set rs = Nothing End Sub