Makros in Excel
f34rless
- sonstiges
0 Vinzenz Mai0 f34rless
0 Detlef G.
Guten Abend
ich hoffe das ich hier bei Euch einen Hinweis bekomme, auch wenn es sich nicht um HTML handelt.
Folgendes Thema.
Eine komplette Zeile mit 6 Spalten (in der 6 steht eine wichtige Formel) soll über ein makro eingefügt werden. Wie ich ein Makro erstelle und wie ich dieses dem Button zuweise, habe ich bereits geschafft.
Ich möchte gern die Zeile aber so einfügen, das die neue einzufügende Zeile immer ganz oben in der Liste steht.
Bin für jede Hilfe dankbar.
Danke Schön
f34rless
Hallo
Eine komplette Zeile mit 6 Spalten (in der 6 steht eine wichtige Formel) soll über ein makro eingefügt werden. Wie ich ein Makro erstelle und wie ich dieses dem Button zuweise, habe ich bereits geschafft.
Ich möchte gern die Zeile aber so einfügen, das die neue einzufügende Zeile immer ganz oben in der Liste steht.
Wo ist das Problem?
1. Füge in der richtigen Zeile (d.h. ganz oben in der Liste) eine neue Zeile ein.
2. Kopiere in die neue Zeile den gewünschten Inhalt
Freundliche Grüße
Vinzenz
Die bestehenden Zeilen werden nicht verschoben, sondern die erste wird von der neuen leeren Zeile überschrieben.
Schönen Abend ...
Hallo
Die bestehenden Zeilen werden nicht verschoben, sondern die erste wird von der neuen leeren Zeile überschrieben.
Deswegen sollst Du ja zuerst eine neue leere Zeile einfügen, damit Du eben keine vorhandene Daten überschreibst.
Beispiel: Du möchtest in Zeile 7 des aktuellen Arbeitsblattes eine neue leere Zeile einfügen und die vorhandenen Zeilen um eine Zeile nach unten verschieben:
ActiveSheet.Rows(7).Insert Shift:=xlDown
Kopiere nun Deine sechs Zellinhalte in die neue Zeile :-)
Freundliche Grüße
Vinzenz
Hallo f34rless
Ich möchte gern die Zeile aber so einfügen, das die neue einzufügende Zeile immer ganz oben in der Liste steht.
Wenn mir nicht einfällt, wie ich etwas per Macro erreichen kann, dann gehe ich auf Extras -> Macro -> Aufzeichnen. Dann mache ich es einmal manuell, beende die Aufzeichnung und schaue mir dann das Macro an. Oft muss dann nur noch ein bisschen Müll herausgelöscht werden und das Select-Objekt durch ein Range-Objekt ersetz werden, damit es dann wie gewünscht funktioniert.
Beim Einfügen einer neuen Zeile erhalte ich z.B.:
Rows("1:1").Select
Selection.Insert Shift:=xlDown
oder:
Range("A1").Select
Selection.EntireRow.Insert
Nun kann ich schmeiße ich Select und Selction raus und erhalte:
Rows("1:1").Insert Shift:=xlDown
bzw.:
Range("A1").EntireRow.Insert
Aus Rows("1:1") kann ich noch Rows(1) machen oder Statt Range("A1") Cells(1, 1) verwenden.
Auf Wiederlesen
Detlef