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.

Daten übertragen
#1
Hallo zusammen,
ich bin neu hier, desshalb sollte ich was falsch machen einfach melden.

Ich will aus einer laufend neu generierten Tabelle(Daten) Werte, die einer Person zugeordnet sind, in eine Übersichtstabelle übertragen. Das Problem ist, dass die Anordnung in der Übersicht nicht mit der Anordnung in der Tabelle (Daten) übereinstimmt. Kann mir jemand einn Tipp geben, wie ich sowas zustande bringe, eventuell auch per VBA.

Gruß und schönes Wochenende
Antworten Top
#2
Moin,

mit Powerquery (Daten->Daten Abrufen->aus Datei->Aus Excel Arbeitsmappe).

Für konkretere Antworten benötigt man eine konkretere Frage.

Viele Grüße
derHöpp
Antworten Top
#3
Hallo der Höpp,
danke für die Rückmeldung.
Natürlich hast du recht, wer eine gute Antwort will sollte auch gute Fragen stellen. Ich hatte die Hoffnung, ein kurzer Denkanstoss würde ausreichen. Leider hat das nicht geklappt.
Die von dir genannte Fuktion kenne ich leider noch nicht. Desshalb eine ausführliche Frage:

In TABELLE1 stehen in Spalte 1 Namen, dahinter in den folgenden Spalten Werte.
In TABELLE2 stehen auch in der Spalte 1 die Namen und in Spalte 2 Werte. Leider schafft es das externe Programm, das die TABELLE2 wöchentlich produziert, die Namen durcheinander zu würfeln.
Mein Wunsch wäre jetzt, irgendwie (ohnen viel Aufwand) die Werte aus Spalte 2 Aus TABELLE2 in TABELLE1 in die nächste leere Spalte zu bringen, so dann die Werte bei den richtigne Namen stehen.

Vielen Dank für jede Unterstützung
Antworten Top
#4
Hola,
immer noch etwas vage.
Es kommen wöchentlich neue Daten hinzu und sollen in Tabelle 1 immer weiter nach rechts geschrieben werden, wie ein Verlauf? Oder sollen die Daten immer in die gleiche Spalte geschrieben werden?
Gruß,
steve1da
Antworten Top
#5
Ja, immer eine neue Spalte dazu
Antworten Top
#6
(02.03.2024, 09:42)juergen schrieb: ... eventuell auch per VBA.

Moin, 19 

per VBA wie in der Beispieldatei: 21

Das ist jetzt nur ein Beispiel. In Tabelle2 arbeite ich mit "ZUFALLSMATRIX" damit die Namen und die Werte sich auch ändern und nicht immer das gleiche nach Tabelle1 kopiert wird. 05

Der Code ist ausreichend kommentiert.

Man(n) muss auch nicht über einen Button gehen. Lässt sich auch über Ereignismakros lösen. Kommt aber immer auf die Gegebenheiten an. Exclamation

Hier der Code:
Code:
' Variablendeklaration erforderlich!
' https://learn.microsoft.com/de-de/office/vba/language/reference/user-interface-help/option-explicit-statement
Option Explicit
Public Sub Main()
    ' Variablendeklaration
    Dim lngTMP As Long
    ' Wenn ein Fehler auftritt gehe zur angegebenen Sprungmarke
    ' https://learn.microsoft.com/de-de/office/vba/language/reference/user-interface-help/on-error-statement
    On Error GoTo Fin
    ' Merken wie die aktuelle Berechnung der Formeln eingestellt ist.
    lngTMP = Application.Calculation
    ' Dann auf Manuell setzen.
    ' https://learn.microsoft.com/de-de/office/vba/api/excel.application.calculation
    Application.Calculation = xlManual
    ' Bildschirmaktualisierung aussschalten.
    ' https://learn.microsoft.com/de-de/office/vba/api/excel.application.screenupdating
    Application.ScreenUpdating = False
    ' Ereigniscodes werden nicht ausgeführt - falls vorhanden.
    ' https://learn.microsoft.com/de-de/office/vba/api/excel.application.enableevents
    Application.EnableEvents = False
    ' Das With-Konstrukt. Alles was sich auf dieses Konstrukt beziehen soll MUSS mit einem Punkt beginnen.
    ' https://learn.microsoft.com/de-de/office/vba/language/reference/user-interface-help/with-statement
    With Tabelle1
        ' Trage in die erste freie Spalte in der ersten Zeile "Wert_" plus die Spaltenanzahl ein.
        .Cells(1, .Cells(1, .Columns.Count).End(xlToLeft).Column + 1).Value = "Wert_" & .Cells(1, .Columns.Count).End(xlToLeft).Column
        ' Kopiere die Zelle DAVOR.
        .Cells(1, .Cells(1, .Columns.Count).End(xlToLeft).Column - 1).Copy
        ' Und übergebe der neuen Zelle das Format.
        .Cells(1, .Cells(1, .Columns.Count).End(xlToLeft).Column).PasteSpecial Paste:=xlPasteFormats
        ' Das Ameisenrennen um die Zelle - durch Copy ausgelöst - beenden. Zwischenspeicher leeren.
        ' https://learn.microsoft.com/de-de/office/vba/api/excel.application.cutcopymode
        Application.CutCopyMode = False
        ' Beziehe dich mit With auf den Bereich nächste freie Spalte Zeilen 2 bis 91.
        With .Range(.Cells(2, .Cells(2, .Columns.Count).End(xlToLeft).Column + 1), .Cells(91, .Cells(2, .Columns.Count).End(xlToLeft).Column + 1))
            ' Trage die Formel "=XVERWEIS($A2;Tabelle2!A:A;Tabelle2!B:B;"";0;1)" ein.
            ' Formula2 muss dann in der englischen Schreibweise eingetragen werden.
            ' Also Semikolon sin Komma. XVERWEIS = XLOOKUP. In der Formel vorkommende Hochkomma müssen gedoppelt werden.
            .Formula2 = "=XLOOKUP($A2,Tabelle2!A:A,Tabelle2!B:B,"""",0,1)"
            ' Und überschreibe die Formel gleich mit ihren Werten.
            .Value = .Value
        End With
    End With
Fin:
    ' Jetzt die Berechnung auf den gemerkten Wert setzen.
    Application.Calculation = lngTMP
    ' Bildschirmaktualisierung einschalten.
    ' https://learn.microsoft.com/de-de/office/vba/api/excel.application.screenupdating
    Application.ScreenUpdating = True
    ' Ereigniscodes werden wieder ausgeführt - falls vorhanden.
    ' https://learn.microsoft.com/de-de/office/vba/api/excel.application.enableevents
    Application.EnableEvents = True
    ' Wenn ein Fehler aufgetreten ist gib ihn mit Nummer und Beschreibung aus.
    If Err.Number <> 0 Then MsgBox "Error: " & Err.Number & " " & Err.Description
End Sub


Angehängte Dateien
.xlsb   Formel_XVERWEIS_und_VBA_Daten_aus_Tabelle2_zu_gleichem_Namen_in_Tabelle_1_neue_Spalte.xlsb (Größe: 26,29 KB / Downloads: 5)
________
Servus
Case
Antworten Top
#7
Hallo zusammen,
Danke für eure Unterstützung,  Problem gelöst
Antworten Top


Gehe zu:


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