Problem mit Makro aus der Recherche!
06.02.2004 16:43:13
Oliver S.
ich benötige Hilfe zu einem Makro, dass ich in der Recherche gefunden habe. Nachfolgendes Makro bringt einen Laufzeitfehler beim Öffnen der Datei.
Option Explicit
Sub Kopieren_Ausschneiden_Aus()
'Tastenkombinationen deaktivieren
Application.OnKey "^x", ""
Application.OnKey "^c", ""
Application.OnKey "^v", ""
Application.OnKey "+{DEL}", ""
Application.OnKey "+{INSERT}", ""
'Drag & Drop ausschalten
Application.CellDragAndDrop = False
'Schaltflaechen in Menüleiste => Bearbeiten deaktivieren
procControlEnableDisable 21, False ' Ausschneiden
procControlEnableDisable 19, False 'Kopieren
procControlEnableDisable 22, False 'Einfuegen
procControlEnableDisable 755, False 'Inhalte einfuegen
procControlEnableDisable 809, False 'Office-&Zwischenablage
End Sub
Sub Kopieren_Ausschneiden_Ein()
'Tastenkombinationen einschalten
Application.OnKey "^x"
Application.OnKey "^c"
Application.OnKey "^v"
Application.OnKey "+{DEL}"
Application.OnKey "+{INSERT}"
'Drag & Drop wieder erlauben
Application.CellDragAndDrop = True
'Schaltflaechen in Menüleiste => Bearbeiten aktivieren
procControlEnableDisable 21, True ' Ausschneiden
procControlEnableDisable 19, True 'Kopieren
procControlEnableDisable 22, True 'Einfuegen
procControlEnableDisable 755, True 'Inhalte einfuegen
procControlEnableDisable 809, True 'Office-&Zwischenablage
End Sub
Sub procControlEnableDisable(intId As Integer, _
bolStatus As Boolean)
Dim cmbSuche As CommandBar
Dim cmbcSteuerelement As CommandBarControl
For Each cmbSuche In Application.CommandBars
Set cmbcSteuerelement = _
cmbSuche.FindControl(ID:=intId, recursive:=True)
If Not cmbcSteuerelement Is Nothing Then
cmbcSteuerelement.Enabled = bolStatus
End If
Next
End Sub
Code eingefügt mit Syntaxhighlighter 2.5
Das Makro schaltet u.a. die Kopierfunktion bei Öffnen der Datei aus. Der Laufzeitfehler entsteht in der Anweisung
Sub procControlEnableDisable(intId As Integer, _
bolStatus As Boolean)
Dim cmbSuche As CommandBar
Dim cmbcSteuerelement As CommandBarControl
For Each cmbSuche In Application.CommandBars
Set cmbcSteuerelement = _
cmbSuche.FindControl(ID:=intId, recursive:=True)
If Not cmbcSteuerelement Is Nothing Then
cmbcSteuerelement.Enabled = bolStatus
End If
Next
End Sub
Code eingefügt mit Syntaxhighlighter 2.5
Als Laufzeitfehler steht in dem Fenster folgendes: Laufzeitfehler -2147467259'(80004005)'
Die Methode 'Enabled' für das Objekt '_CommandBarButton' ist fehlgeschlagen
Kann mir vielleicht jemand helfen, dieses Makro in Excel2000 zum laufen zu bringen? Wäre super. Schon mal besten Dank im Voraus,
Oliver