Liebe Experten, vllt. kann mir jemand von Euch helfen?
Ich habe ehrlich gesagt absolut keine Ahnung von VBA und will eine von Windows frei verfügbare VBA-Statement umwandeln in etwas was ich eher bräuchte.
Leider funktioniert es nicht. Ich schaffe es nicht ein bzw. alle Formularfelder (myform!Feld / variable var1) durch einen Insert in eine andere Tabelle als die des aktuellen Formulars zu laden. Ferner suche ich immer noch nach einer globalen Variable, die den Panelnamen des aktuellen Formulars/ Subformulars enthält.
weiß jemand, ob es überhaupt möglich ist?
Mit Plsql hätte ich es sicherlich in weniger als 10Minuten geschafft:frowning:
Vielen Dank für eure Aufmerksamkeit und evtl. Antworten.
MfG
…
Dim myform, c As Control, xname As String, var1 as string, db As DAO.Database
Set myform = Screen.ActiveForm
var1 = var1 & Chr(13) & Chr(10) & „Aenderungen gemacht bei " & Date & " by me;“
Set db = CurrentDb()
db.Execute „insert into meinetabelle (updates)“ & "values (aenderung " & Datetime & „);“
If myform.NewRecord = True Then
var1 = var1 & Chr(13) & Chr(10) & „Neuer Record“""
End If
For Each c In myform.Controls
Select Case c.ControlType
Case acTextBox, acComboBox, acListBox, acOptionGroup
If c.Name „updates“ Then
If IsNull(c.OldValue) Or c.OldValue = „“ Then
var1 = var1 & Chr(13) & Chr(10) & c.Name & „–voriger Wert war leer“
ElseIf IIf(IsNull(c.Value), „“, c.Value) c.OldValue.Value Then
var1 = var1 & Chr(13) & Chr(10) & c.Name & "==voriger Wert war " & c.OldValue
End If
End If
End Select
Next c
trynextc:
Exit Function
…