Hallo,
ich habe ein kleines Problem in einem Formular.
Und zwar würde ich gerne einen bestimmten Wert über einen Button in die Zwischenablage kopieren.
Dazu nutze ich den folgenden Code, der im Fehler
"Fehler beim Kompilieren: Benutzerdefinierter Typ nicht definiert" endet:
Private Sub cmdCopy_Click()
'If MsgBox("Copy the current selected password to the clipboard?", vbYesNo, "Copy Password") = vbYes Then
Dim clipboard As MSForms.DataObject
Set clipboard = New MSForms.DataObject
clipboard.SetText Me.Password
clipboard.PutInClipboard
MsgBox "Passwort wurde in die Zwischenablage kopiert.", vbOKOnly, "Copy Password"
'End If
End Sub
Diesen habe ich aus einer "Muster-Datenbank", die ich mir für meinen Anwendungsfall geladen habe.
In der Muster-Datenbank kann ich die gewünschten Werte problemlos kopieren. In meiner Datenbank funktioniert es (kurioserweise) nicht.
Kann mir jemand auf die Sprünge helfen, wo genau das Problem liegt?
Meine Vermutung ist, dass ich zwar das Formular und den Code in meine Datenbank übernommen habe, jetzt aber irgendeine Komponente fehlt, die es für die Funktion braucht. Wobei in der Muster-Datenbank auch nur der VBA-Code zu sehen ist.
Vielleicht habt ihr eine Idee.
Die Benutzung der Zwischenablage in der gezeigten Form benötigt einen Verweis auf Microsoft Office XX.0 Object Library.
Alternativ könntest Du Late Binding einsetzen: Zwischenablage und Text (https://www.ms-office-forum.net/forum/showthread.php?t=297651)