Office: (Office 365) Daten in intelligenter Tabelle updaten

Helfe beim Thema Daten in intelligenter Tabelle updaten in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo, ich habe ein kurze intelligente Tabelle mit Formeln und Werten. In Spalte A steht eine eindeutige ID. In Spalte B bis Z dann die Formeln bzw.... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von vkt, 26. Januar 2023.

  1. VKT
    vkt User

    Daten in intelligenter Tabelle updaten


    Hallo,
    ich habe ein kurze intelligente Tabelle mit Formeln und Werten. In Spalte A steht eine eindeutige ID. In Spalte B bis Z dann die Formeln bzw. Werte.
    Die Werte aus der kurzen Tabelle soll nun die lange Tabelle updaten.
    Wenn die ID in beiden Tabellen vorhanden ist kopiere die Werte aus kurzer Tabelle in lange Tabelle. Wenn die ID in der langen Tabelle noch nicht vorhanden ist, kopieren die Daten an das End der langen Tabelle als neue Zeile.
    Kann mir hierzu jemand weiterhelfen. Dank und Gruß

    Daten in intelligenter Tabelle updaten upload_2023-1-26_10-58-31.png
     
  2. VKT
    vkt User
    Vielleicht hätte ich noch schreiben sollen ob mir jemand beim VBA Code helfen kann.

    For i = 1 bis ende Lange Tabelle
     
  3. neopa C Erfahrener User
    Hallo,

    muss es denn wirklich VBA sein. Mit der in Excel vorhandenen Power Query (PQ) Funktionalität wären es nur einmalig ein paar Mausklicks.
     
    neopa C, 26. Januar 2023
    #3
  4. VKT
    vkt User

    Daten in intelligenter Tabelle updaten

    Hallo neopa,

    von PowerQuery habe ich noch weniger Ahnung als von VBA.
    Ich habe die Sub schon fast fertig aber ein Problem habe ich immer noch.

    Sub UpdateData ()

    Dim TB1 As Worksheet, TB2 As Worksheet
    Dim LR2 As Long, i As Long, Zeile As Long
    Dim Z1 As Integer, SP As Integer

    Set TB1 = Sheets("LangeTabelle")
    Set TB2 = Sheets("KurzeTabelle")
    Z1 = 6 'Erste Zeile mit Daten / wegen Überschrift
    SP = 1 'Daten in A

    LR2 = TB2.Cells(TB2.Rows.Count, SP).End(xlUp).Row 'letzte Zeile der Spalte

    For i = Z1 To LR2
    If WorksheetFunction.CountIf(TB1.Columns(SP), TB2.Cells(i, SP)) > 0 Then
    'Schon vorhanden in Zeile
    Zeile = WorksheetFunction.Match(TB2.Cells(i, SP), TB1.Columns(SP), 0)

    Else
    'Neu anlegen
    Zeile = TB1.Cells(TB1.Rows.Count, SP).End(xlUp).Row + 1
    End If

    'Inhalt der Zeile kopieren
    TB2.Rows(i).Copy
    TB1.Rows(Zeile).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

    Next

    Die "neuen" Zeilen werden zwar unten an die Tabelle geschrieben - aber die intelligente Tabelle wird um die Anzahl der neuen Zeilen nicht erweitert! :-(

    Was fehlt oder ist falsch im Code??

    Als VBA Neuling habe ich das Gefühl es gibt für jedes Problem unterschiedlich Befehle je nachdem ob es ein neue "intelligente" Tabelle ist oder eine "normale" Tabelle - das macht es nicht gerade einfach!
     
  5. Exl121150 Erfahrener User
    Hallo,

    Code:
    Option Explicit
    
    Sub UpdateData()
    
       Dim TB1 As Worksheet, TB2 As Worksheet
       Dim lst1 As ListObject, lst2 As ListObject
       Dim row1 As ListRow, row2 As ListRow
       Dim valID As Variant, rngID1 As Range, Idx1 As Long, Sp1 As Long
      
       Set TB1 = Sheets("LangeTabelle"): Set lst1 = TB1.ListObjects("LangeStrukTabelle")  '<== Anpassen!
       Set TB2 = Sheets("KurzeTabelle"): Set lst2 = TB2.ListObjects("KurzeStrukTabelle")   '<== Anpassen!
      
       For Each row2 In lst2.ListRows
          valID = row2.Range.Cells(1)
          Set rngID1 = lst1.ListColumns("ID").DataBodyRange.Find(What:=valID, LookIn:=xlValues, LookAt:=xlWhole)
          If rngID1 Is Nothing Then
             'ID wurde nicht gefunden: Satz der Kurztabelle an Langtabelle anfügen
             Set row1 = lst1.ListRows.Add
          Else
             'ID wurde gefunden: Diesen Satz updaten
             Idx1 = rngID1.Row - lst1.HeaderRowRange.Row
             Set row1 = lst1.ListRows(Idx1)
          End If
          row2.Range.Copy Destination:=row1.Range
       Next row2
      
    End Sub
    

    Die Namen der Arbeitsblätter und der Tabellen sind noch anzupassen. Es wird angenommen, dass beide Tabellen gleich viele Spalten besitzen.
     
    Exl121150, 26. Januar 2023
    #5
  6. VKT
    vkt User
    Hallo Exl121150,

    vielen Dank. Funktioniert so weit bis auf das die Formeln aus der kurzen Tabelle kopiert werden und leider nicht die "Werte"

    Wie muss hierzu die folgende Zeile abgeändert werden:
    row2.Range.Copy Destination:=row1.Range

    Dank und Gruß
     
  7. VKT
    vkt User
    Hi nochmal,
    hab die Lösung in den Untiefen des Internets gefunden:

    row2.Range.Copy
    row1.Range.PasteSpecial Paste:=xlPasteValues

    Nochmals Dank
     
Thema:

Daten in intelligenter Tabelle updaten

Die Seite wird geladen...
  1. Daten in intelligenter Tabelle updaten - Similar Threads - Daten intelligenter Tabelle

  2. Daten Einlesen aus mehre Zellen in Verbindung einer Verbundene Zelle

    in Microsoft Excel Hilfe
    Daten Einlesen aus mehre Zellen in Verbindung einer Verbundene Zelle: Moin Allerseits, mit Verlaub ich bin seit 5 Jahren aus der Materie raus, fange somit von Vorne an. Frage: Anpassung eines bereits Geschrieben Codes. Verwendete Elemente: Quelle> Tabelle "wsLK",...
  3. Excel icon fehlt

    in Microsoft Excel Hilfe
    Excel icon fehlt: Hallo zusammen ich habe das Icon aus Datei nicht um Daten abzurufen [ATTACH] was kann ich tun? bei Daten zusammenführen ist es vorhanden - ich möchte eigentlich alle Tabellenblätter in eine...
  4. Excel Zusammenführen

    in Microsoft Excel Hilfe
    Excel Zusammenführen: Guten Tag Sub Tabelle_zusammenführen() Dim i As Integer Dim Zusammenfassung As Worksheet Dim BereichZielTab As Range Set Zusammenfassung = Worksheets("Zusammenfassung") For i = 2...
  5. Arr sind Null obwohl Daten vorhanden sind

    in Microsoft Excel Hilfe
    Arr sind Null obwohl Daten vorhanden sind: Hallo zusammen Erst mal frohe Festtage ;-) Ich hab ein Problemchen... In einer Abfrage eröffne ich mit einem "Connection.Open..:" eine Query Anschliessend mit rs.Open,(vobei mein RS ein...
  6. Datum markieren und Daten ausblenden

    in Microsoft Excel Hilfe
    Datum markieren und Daten ausblenden: Hallo zusammen Ist es möglich, in der angehängten Tabelle, jeweils Ende Monat einen Datumsstrich einzufügen, wie jetzt der roter, der manuell eingefügt ist? Und wenn ja: wenn in der Spalte A eine...
  7. Daten-Import inkl. Primärschlüssel

    in Microsoft Access Hilfe
    Daten-Import inkl. Primärschlüssel: Hallo! Ich habe eine Accesstabelle, die ich in Sharepoint importieren möchte, brauche jedoch auch die - gleichen - IDs, die zugleich auch als Primärschlüssel fungieren und ich diese als...
  8. VBD Daten aus einer "intelligenten" Tabelle in einer anderen "intelligenten" Tabelle archivieren

    in Microsoft Excel Hilfe
    VBD Daten aus einer "intelligenten" Tabelle in einer anderen "intelligenten" Tabelle archivieren: Hallo zusammen, Ich hab hier schon viel rumgeschaut, komme aber mit meinem Problem leider nicht weiter. Vielleicht könnt ihr mir ja weiterhelfen. Ich habe eine Tabelle ("tbl_Umsatz"), auf dem...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden