Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
716to720
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
716to720
716to720
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
per VBA-Script Zeilen einfügen?
11.01.2006 11:26:35
Holger
Hallo Jungs und Mädels.
Ich bin totaler VBA-Debütant, weiß daher nicht, was mit VBA möglich ist und wo die Grenzen sind. Sorry ;-)
Ist es möglich, per Script (am besten durch drücken eines Buttons, egal wo der ist) die untersten vier Zeilen einer Tabelle zu kopieren und in Zeile 5 einzufügen?
Wäre toll!!
Danke
Holger

17
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: per VBA-Script Zeilen einfügen?
11.01.2006 11:48:41
Harald
Hi Holger,
vielleicht so ?

Sub einfuegen()
Dim Lrow As Long
Lrow = Cells(Rows.Count, 1).End(xlUp).Row
Range(Rows(Lrow), Rows(Lrow - 3)).Cut
Rows(5).Insert Shift:=xlDown
End Sub

Gruss Harald
AW: per VBA-Script Zeilen einfügen?
11.01.2006 12:13:48
Holger
Hey Harald, das ist ja toll, dass sowas geht :-))
Welche Tastenkombination löst das Script denn aus? *schäm
Ich hab doch keine Ahnung... :-/
werden beim Einfügen die Zellen nach unten verschoben oder überschrieben? Sie sollen nach unten verschoben werden.
Harald, das ist echt super!
Danke!! :-)
Würde gerne VBA lernen. Was empfiehlst du für einen Einsteiger?
Anzeige
AW: per VBA-Script Zeilen einfügen?
11.01.2006 12:31:04
Harald
Hi,
die Zeilen werden wie gewünscht nach unten verschoben (Insert Shift:=xlDown)
Ein Tastenkombination gibt es nicht. Zeichne ein kurzes Makro auf (mit Tastenkombi), lösche den Code und füge den Code aus meinem Vorschlag ein.
Oder füge dir über die Steuerelement Toolbox einen Button ein.
Im Entwurfsmodus auf Code anzeigen klicken, und dort den Code einfügen, oder Call einfuegen schreiben (dazu muss mein Code komplett im Modul1 stehen).
Dann gilt der Code für das gerade aktive Blatt.
vba-lernen...bin ja selbst noch Lehrling ;-))
Grundlagen bekam ich via Abendkurs, die ich per Herbers Excel-CD, bzw. Forum
(mitlesen, fragen, antworten) nun weiterentwickle. Buchempfehlung hab ich keine.
Gruss Harald
Anzeige
AW: per VBA-Script Zeilen einfügen?
11.01.2006 12:47:49
Holger
Sorry, Harald, ich habe das nicht verstanden. Wie gesagt, ich habe noch nicht mit VBA gearbeitet.
Ich hätte gerne einen Button in (irgendeiner) Symbolleiste, der das Script startet.
Im Entwurfmodus finde ich kein "Code anzeigen".
Wenn ich übrigens auf "Sub ausführen" klicke, bekomme ich eine Fehlermeldung "Anwendungs oder objektdefinierter Fehler".
Nun weiß ich leider nicht mehr weiter.
Kannst du mir nochmal helfen?
AW: per VBA-Script Zeilen einfügen?
11.01.2006 13:10:42
Harald
Hi, klaro
zuerstmal. Den Code hab ich getestet und er läuft. Dazu müssen auf dem gerade aktiven Blatt in Spalte A mindestens 4 Einträge sein (da er in Spalte A die letzte gefüllte Zelle sucht und dann noch 3 Zeilen abzieht. Man kann das auch abchecken.
Sub einfuegen()
Dim Lrow As Long
Lrow = Cells(Rows.Count, 1).End(xlUp).Row 'letzte gefüllte Zelle in Spalte 1 ("A")
if Lrow Range(Rows(Lrow), Rows(Lrow - 3)).Cut
Rows(5).Insert Shift:=xlDown
End Sub
So...Button. Step-by-step
Leg den Button in das Blatt, nicht in die Leiste, dann startet man ihn auch nicht unbeabsichtigt aus einer anderen Mappe (andere Möglichkeiten wären vorhanden, sind aber eher nichts für Beginner).
Steuerelement-Toolbox aufrufen. Button-Werkzeug aufklicken und Button im Blatt platzieren. Entwurfsmodus ist automatisch eingeschaltet. rechte Maustaste auf den Button
Dort steht Code anzeigen. Den Code-Text hinein...sieht dann so aus.

Private Sub CommandButton1_Click()
Dim Lrow As Long
Lrow = Cells(Rows.Count, 1).End(xlUp).Row 'letzte gefüllte Zelle in Spalte 1 ("A")
if Lrow < 4 then exit sub  'wenn letzte Zeile kleiner 4 dann Abbruch
Range(Rows(Lrow), Rows(Lrow - 3)).Cut
Rows(5).Insert Shift:=xlDown
End Sub

Wenn das Eigenschaftenfenster geschlossen sein sollte, F4 drücken.
Dort kannst Du per Caption den Button mit anderem Text versehen, bzw. Farbe etc. anpassen
Speichern und Entwurfsmodus beenden....fertich ;-))
Gruss Harald
Anzeige
AW: per VBA-Script Zeilen einfügen?
11.01.2006 14:39:58
Holger
Harald, du bist ja der Hit :-)
Jetzt funktioniert alles :-)
Bleibt noch eine letzte Frage:
die untersten Zeilen sollten kopiert und nicht ausgeschnitten werden.
Meine erste VBA-Eigenleistung: ich habe "cut" gegen "copy" ersetzt ;-)
Funktioniert natürlich, aber die untersten Zeilen bleiben nun nach dem Einfügen markiert. Kann das Script am Ende die Fließmarkierung ausschalten?
Wenn nicht, auch nicht schlimm, mein Problem ist ja gelöst. :-)
Herzlichen Dank!
Du hast sehr geholfen,
ich sehe das nicht als selbstverständlich an!
Holger
AW: per VBA-Script Zeilen einfügen?
11.01.2006 14:51:53
Harald
Markierung ausschalten per
application.cutcopymode = false
oder gewünschte Zelle anwählen
Range("A5").select
und Dankeschön für die Rückmeldung.
Gruss Harald
Anzeige
AW: per VBA-Script Zeilen einfügen?
11.01.2006 15:30:00
Holger
sorry,
trotz mehrfachen Aktualisierens konnte ich meinen Eintrag selber nicht finden, daher steht er jetzt drei mal drin - einfach ignorieren!
Danke
(warum kann ich keine Einträge löschen?) :-P
AW: per VBA-Script Zeilen einfügen?
11.01.2006 15:44:07
Harald
keine Panik...
vermutlich hast Du mehrere Forumsfenster geöffnet ;-))
Harald
AW: per VBA-Script Zeilen einfügen?
12.01.2006 10:17:46
Holger
Hey Harald,
guten Morgen. :-)
*schäm, schon wieder ne Frage, aber sicherliche gaaaaaanz einfach :-)
Möchte nun statt Zeile die letzte Spalte einfügen.
Welche Zeile muss ich verändern? Einfach Row in Collum umbenennen? (war mal einfach geraten)
...
AW: per VBA-Script Zeilen einfügen?
12.01.2006 10:37:51
Harald
Moin Holger,
grundsätzlich ja.
Syntaxbeispiel für letzte gefüllte Spalte in Zeile 1
cells(1, columns.count).end(xltoleft).column
Gruss Harald
Anzeige
AW: per VBA-Script Zeilen einfügen?
12.01.2006 11:12:46
Holger
... wenn ich
cells(1, columns.count).end(xltoleft).column
einfüge, bekomme ich die Fehhlermeldung "Objekt unterstützt die Methode nicht.
So sieht mein Code derzeit aus:

Private Sub CommandButton1_Click()
Dim Lrow As Long
Cells(1, Columns.Count).End(xlToLeft).Column
If Lrow < 4 Then Exit Sub  'wenn letzte Zeile kleiner 4 dann Abbruch
Range(Columns(Lrow), Columns(Lrow - 2)).Copy
Columns(4).Insert Shift:=xlToLeft
Application.CutCopyMode = False
End Sub

Flüchtigkeitsfehler
12.01.2006 11:34:01
Harald
so gehts
Lrow = Cells(1, Columns.Count).End(xlToLeft).Column
Gruss Harald
Anzeige
AW: Flüchtigkeitsfehler
12.01.2006 13:03:26
Holger
YES! So funktioniert es :-)
So langsam verstehe ich das Script - es fängt an Spass zu machen!
Danke! Danke!
Holger
Danke für die Rückmeldung
12.01.2006 13:39:25
Harald
und weiterhin viel Spass ;-))
Gruss Harald
AW: per VBA-Script Zeilen einfügen?
11.01.2006 14:40:05
Holger
Harald, du bist ja der Hit :-)
Jetzt funktioniert alles :-)
Bleibt noch eine letzte Frage:
die untersten Zeilen sollten kopiert und nicht ausgeschnitten werden.
Meine erste VBA-Eigenleistung: ich habe "cut" gegen "copy" ersetzt ;-)
Funktioniert natürlich, aber die untersten Zeilen bleiben nun nach dem Einfügen markiert. Kann das Script am Ende die Fließmarkierung ausschalten?
Wenn nicht, auch nicht schlimm, mein Problem ist ja gelöst. :-)
Herzlichen Dank!
Du hast sehr geholfen,
ich sehe das nicht als selbstverständlich an!
Holger
Anzeige
AW: per VBA-Script Zeilen einfügen?
11.01.2006 15:25:51
Holger
Du bist ja der Hit, Harald! :-)
Jetzt funktioniert alles so, wie's sein soll :-)
Eine Sache stört noch:
Die untersten Zellen sollten kopiert und nicht ausgeschnitten werden.
Also habe ich im Script (meine erste VBA-Eigenleistung) ;-) "cut" gegen "copy" ersetzt.
Das funktioniert natürlich, allerdings verschwindet nach Ausführung des Scripts die Fließmarkierung der kopierten Zellen nicht.
Läßt sich das ändern?
Herzlichen Dank Harald,
du hast mir sehr geholfen,
das sehe ich nicht als selbstverständlich an!
Viel Erfolg weiter!
Holger

156 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige