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.

Zellinhalte kopieren
#1
Hallo zusammen Biggrinsmiley Biggrinsmiley Biggrinsmiley ,

ich habe folgendes Problem:

ich habe eine Tabelle mit insgesamt 2 Blättern.

Im ersten Blatt werden in insgesamt 10 Spalten unterschiedliche Eingaben gemacht. Die Zeilenanzahl ist unbegrenzt. (Es sollen viele Eingaben "untereinander" fortlaufend eingegeben werden.)

Im ersten Blatt soll in der letzten Spalte ein "Button" oder ähnliches mit "erledigt" angefügt werden.

Sobald dieser "Button" getätigt wird soll der komplette Zelleninhalt der Zeile in das Blatt 2 (Archiv) kopiert werden. Außerdem soll danach der Zellinhalt im Blatt 1 gelöscht werden.

Ich wäre euch für eine Hilfestellung sehr dankbar!

Grüße und noch allen ein schönes langes Wochenende!!!

Thomas :15:
Antworten Top
#2
Hallo Thomas,

mein Vorschlag ist, das Kopieren per Doppelklick irgendwo in der entsprechenden Zeile zu starten.
Dazu kommt folgender Code in das schon vorhandene VBA-Modul des Tabellenblattes Tabelle1:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
 With Target.EntireRow
   .Copy Worksheets("Tabelle2").Cells(Rows.Count, 1).End(xlUp).Offset(1)
   .Value = ""
 End With
End Sub
Gruß Uwe
Antworten Top
#3
Hi Uwe,

wie müßte der Code geändert werden, wenn in Tab2 der erste Eintrag in Zeile 1 erfolgen kann? Aufgrund Offset(1) gehts ja in einer leeren Tabelle in 2 los.
Mit freundlichen Grüßen  :)
Michael
Antworten Top
#4
Hi Micha,

(30.10.2017, 11:37)Zwergel schrieb: wie müßte der Code geändert werden, wenn in Tab2 der erste Eintrag in Zeile 1 erfolgen kann? Aufgrund Offset(1) gehts ja in einer leeren Tabelle in 2 los.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
With Worksheets("Tabelle2")
Target.EntireRow.Copy .Cells(Rows.Count, 1).End(xlUp).Offset(1 + (.Cells(1) = ""))
Target.EntireRow.Value = ""
End With
End Sub
Gruß Uwe
Antworten Top
#5
Hi Uwe,

funktioniert, danke, aber erklär mir bitte den Teil
Zitat:Offset(1 + (.Cells(1) = "")
Mit freundlichen Grüßen  :)
Michael
Antworten Top
#6
Hi Micha,

die Behauptung (im Beispiel für die Zelle A1)
.Cells(1) = ""
ergibt je nach Wahrheitsgehalt True oder False.
Umgewandelt in Werte (hier durch die Klammern erzwungen)
(.Cells(1) = "")
ergibt entsprechend -1 oder 0.

Gruß Uwe
Antworten Top
#7
Hi Uwe,

danke, mir war nicht klar, das True die -1 ergibt.
Mit freundlichen Grüßen  :)
Michael
Antworten Top


Gehe zu:


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