Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Letzte Zeile nach unten kopieren
#1
Hallo,
Bitte um VBA Hilfe!
in meiner dynamischen Tabelle sollte via Button die letzte Zeile kopiert 
und 1 Zeile tiefer eingefügt werden.

Vielen Dank für die Hilfe

Gruß Derhard
Antworten Top
#2
Hallo

gemäß deiner Angaben sieht das bei mir so aus
Code:
Sub test()
   Dim lngLetzte As Long
   lngLetzte = Cells(Rows.Count, 1).End(xlUp).Row
   Rows(lngLetzte).Copy Cells(lngLetzte + 1, 1)
End Sub
MfG Tom
[-] Folgende(r) 1 Nutzer sagt Danke an Crazy Tom für diesen Beitrag:
  • derhard
Antworten Top
#3
Hallo Derhard,

wenn es um eine Tabelle im Tabellenblatt geht, vielleicht so?

Sub Zeile_Anhaengen()
 With ActiveSheet.ListObjects(1).Range
   .Rows(.Rows.Count).Copy
   .Rows(.Rows.Count).Offset(1).Insert
 End With
 Application.CutCopyMode = False
End Sub

Gruß Uwe
Antworten Top
#4
Hallo auch von mir!
Ich bin "halb" bei Uwe.  Angel
Es reicht, eine Zelle Deiner Tabelle zu markieren und diese dann per Einfügen, Tabelle in ein Listobject ("intelligente Tabelle") umzuwandeln.
Trägst Du jetzt etwas in die Zeile unter der Tabelle ein, werden automatisch Formeln und Formate weitergeführt, da braucht es keinen Code.
(davon ausgehend, dass es Dir wirklich "nur" um Formeln und Formate geht)

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#5
Hallo Leute,

ich möchte gerne mal die interessanten Code von Uwe austesten. Dazu habe ich in der ersten Spalte mal in ein paar Zellen Text untereinander geschrieben.

Wenn ich nun beim Code-Testen auf die Einzelschritttaste F8 drücke erscheint immer "Index außerhalb des gültigen Bereichs". Was mache ich falsch?
Antworten Top
#6
Hi!
Du hast keine "intelligente Tabelle"!
Siehe auch meinen Beitrag #4

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#7
Hallo Algor,

vermutlich hast Du den Bereich noch nicht in eine Tabelle umgewandelt.
Markiere eine Zelle des Bereiches und drücke Strg+L.

Gruß Uwe
Antworten Top
#8
Hi

dann hast du wahrscheinlich keinen als Tabelle formatierten Bereich
und deshalb Laufzeitfehler 9 weil da kein "Listobject" ist

MfG Tom
Antworten Top
#9
Hallo,

habe die Spalten als Text formatiert. Leider ohne Ergebnis. Dann habe ich mittes Makrorekorder dieses Textformatieren aufgezeichnet und den Code oben um folgendes ergänze:


Code:
Columns("A:C").Select
Selection.NumberFormat = "@"
Range("A1").Select

Hab also gleich 3 Spalten als Text formatiert und die Auswahl wieder auf Zelle A1 gesetzt. Leider immer noch negativ.
Antworten Top
#10
Hallo Uwe,

danke Dein Tipp hat geholfen. Hatte keine Tabelle und hab keine Ahnung. Aber jetzt funktioniert es und ich kann etwas von euch lernen.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste