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.

Datenliste1 an Datenliste2 anhängen
#1
Moin, Moin!

Ich hab da mal folgendes Problem:

Ich habe zwei dynamische Listen, beide in einem Tabellenblatt (Berechnungen) - Liste 1: A1:D1200, Liste 2: L1:O1200.

Die Anzahl der Werte wird durch eine Abfrage geregelt und kann von jeweils einem Datensatz bis zu eben 1200 Datensätzen beinhalten.
Ich möchte nun gerne Liste2 an Liste1 nach dem letzten Datensatz (Liste1) anhängen. Diese beiden Listen liegen bereits vor.

Der Gedanke hierzu:
Liste1 beinhaltet meine Einnahmen, bestehend aus Suchkriterium, Datum, Brutto-Betrag und Leerzelle
Liste2 beinhaltet meine Ausgaben, bestehend aus Suchkriterium, Datum, Leerzelle und Brutto-Betrag.
beide Listen werden bereits durch eine Matrix-Formel generiert - Leere Einträge werden als "Leer" wiedergegeben und nicht als "Null".

Eine komplette liste beider Datensatzlisten würde dann auf einem anderen Tabellenblatt nach dem Suchkriterium nur die Datensätze auswerfen
und somit eine Einnahmen-Ausgaben-Überschuss-Tabelle ergeben...

Über Hilfe wäre ich sehr dankbar, Dankeim Voraus!!!
Antworten Top
#2
Hallo,
kopier den Code in ein Modul und starte das Makro "DatenLesen" Es erfolgt eine Abfrage nach dem Datenfile 2.


Code:
Public Sub DatenLesen()
Dim fDialog As FileDialog
Dim WS As Worksheet
Dim M As Integer
Dim K as Integer
Dim FileName As String
Dim FN As String

On Error GoTo ErrorHandler
Application.ScreenUpdating = False
Set fDialog = Application.FileDialog(msoFileDialogFilePicker)
fDialog.AllowMultiSelect = False
fDialog.Title = "Select a file"
fDialog.Filters.Clear
fDialog.Filters.Add "Excel files", "*.xlsx"
fDialog.InitialFileName = ActiveWorkbook.Path
If fDialog.Show = -1 Then
   FileName = fDialog.SelectedItems(1)
Else
   Set fDialog = Nothing
   Exit Sub
End If
Set WS = Worksheets(ActiveSheet.Name)
M = WS.Cells(Rows.Count, 1).End(xlUp).Row + 1
Workbooks.Open FileName:=FileName, ReadOnly:=True
FN = ActiveWorkbook.Name
With ActiveWorkbook.Worksheets(ActiveSheet.Name)
     K = .Cells(Rows.Count, "L").End(xlUp).Row
     .Range("L1:O" & K).Copy Destination:=WS.Range("A" & M)
     Application.DisplayAlerts = False
     Workbooks(FN).Close
     Application.DisplayAlerts = True
End With
 Application.ScreenUpdating = True
Exit Sub
ErrorHandler:
Application.ScreenUpdating = True
MsgBox "Error mit Daten !" & Chr(10) & _
       "einlesen von Daten wird beendet!", vbCritical, "Wichtiger Hinweis"
End Sub

Da kein Beispiel im Anhang war konnte ich nicht testen!
Grüße aus Nürnberg
Armin
Ich benutze WIN 10 (64bit) und Office 19 (32bit)
Antworten Top
#3
Hallo, u.a. dafür ist Power Query gemacht... keine Formeln, kein VBA, dynamische Listen - passt.
Gruß Jörg
ich muss mich erst wieder ganz langsam heran robben. Also bitte ich um Nachsicht

"Wer immer tut, was er schon kann, bleibt immer das, was er schon ist." - Henry Ford
Antworten Top


Gehe zu:


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