2016-04-15 15 views
0

Ich möchte eine Zeile in meine Datentabelle einfügen. Wenn ich es manuell versuche (Zeile auswählen, neue Zeile einfügen), funktioniert es gut, aber wenn ich versuche, es in mein Makro einzufügen, das in einer ActiveX-Taste (!) Steht, heißt es: Laufzeitfehler 438: Objekt unterstützt dies nicht Methode". Wenn ich den Mecro in einem üblichen Makro, nicht innerhalb der Taste, versuche, funktioniert es auch gut.Neue Zeile in Datentabelle einfügen VBA Excel2010 ActiveX

Wie kann ich dieses Problem loswerden?

Set wsd = Sheets("Data") 
wsd.Select      
With wsd 
.Rows("5:5").Select 
.Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove 'Here appears the error 
End With 

Hilfe wird sehr geschätzt. Danke im Voraus!

Antwort

1

Sie brauchen keine Auswahl. Nicht für das Blatt und nicht für die Reihe.

Sub test() 
Set wsd = Sheets("Data") 
With wsd 
    .Rows("5:5").Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove 
End With 

End Sub 
+0

++ schön :) Übrigens brauchen Sie auch nicht "5: 5". '.Rows (5)' wird auch tun –

+0

Vielen Dank! Ich hatte sofort einen weiteren Fehler, aber ich vergaß zu antworten, während ich es gelöst habe :) – yfro

Verwandte Themen