VBA Spalten dynamisch auslesen und einfügen
Hallo zusammen,
Ich möchte folgendes bei Excel VBA umsetzen.
Aus einem Workbook Tabelle1 Spalte C die Werte ausschneiden und in ein anderes Workbook Tabelle1 Spalte B einfügen.
Dabei können von Spalte C unterschiedlich viele Zellen befüllt sein und in dem Ziel Workbook Spalte B sollen die Werte nicht überschrieben werden sondern nach unten fortlaufend ergänzt.
Ich weiß nicht wie ich diese "Dynamik" verwirklichen kann.
Vielen Dank im voraus
Ich möchte folgendes bei Excel VBA umsetzen.
Aus einem Workbook Tabelle1 Spalte C die Werte ausschneiden und in ein anderes Workbook Tabelle1 Spalte B einfügen.
Dabei können von Spalte C unterschiedlich viele Zellen befüllt sein und in dem Ziel Workbook Spalte B sollen die Werte nicht überschrieben werden sondern nach unten fortlaufend ergänzt.
Ich weiß nicht wie ich diese "Dynamik" verwirklichen kann.
Vielen Dank im voraus
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 8070524934
Url: https://administrator.de/forum/vba-spalten-dynamisch-auslesen-und-einfuegen-8070524934.html
Ausgedruckt am: 24.12.2024 um 19:12 Uhr
6 Kommentare
Neuester Kommentar
Sub KopierenUndAnfügen()
Dim wb1 As Workbook, wb2 As Workbook
Set wb1 = ActiveWorkbook
Set wb2 = Workbooks.Open("D:\Mappe2.xlsx")
With wb1.Sheets("Tabelle1")
.Range("C1:C" & .Cells(.Rows.Count, "C").End(xlUp).Row).Copy Destination:=wb2.Sheets("Tabelle1").Cells(Rows.Count, "B").End(xlUp).Offset(1, 0)
End With
End Sub
ibt es noch eine Möglichkeit in Spalte A das aktuelle Datum zu schreiben. (nur bei den Zeilen die auch befüllt wurden)
Jupp,wenn Spalte A bereits als Datum formatiert ist dannSub KopierenUndAnfügen()
Dim wb1 As Workbook, wb2 As Workbook, target As Range, source As Range
Set wb1 = ActiveWorkbook
Set wb2 = Workbooks.Open("D:\Mappe2.xlsx")
With wb1.Sheets("Tabelle1")
Set source = .Range("C1:C" & .Cells(.Rows.Count, "C").End(xlUp).Row)
Set target = wb2.Sheets("Tabelle1").Cells(Rows.Count, "B").End(xlUp).Offset(1, 0)
target.Offset(0, -1).Resize(source.Rows.Count, 1).Value = Date
source.Copy Destination:=target
End With
End Sub
Den Beitrag bitte noch auf erledigt setzen setzen, und Lösungen markieren. Bedankt.
Klar, einfach das "Date" in dem o.g. Code ersetzen durch
Sonst noch was? Stück Torte zum Kaffee vielleicht?!
Du darfst gerne auch selbst in der Referenz ein bisschen stöbern => Excel VBA Reference
wb1.BuiltinDocumentProperties("Last save time").Value
Sonst noch was? Stück Torte zum Kaffee vielleicht?!
Du darfst gerne auch selbst in der Referenz ein bisschen stöbern => Excel VBA Reference