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.

VBA Werte in 2Tabellenblatt kopieren
#1
Hallo,
Ich habe verschiedene Werte (QM1-QM7) diese sollen in das 2te Tabellenblatt kopiert werden,
sprich diese sollen sich aber bei aufrufen des 2ten Tabellen-Blatts immer wieder aktualisieren.

1. Es kann vorkommen das zwischen den QM's weitere Zeilen eingefügt werden, z.B. QM4.1 oder auch QM8 usw... diese müssen dann auch ins Tabellenblatt2
2. Nur die Werte in den orangen Spalten sollen mit kopiert werden, die Weißen nicht.
3. Es muss sich bei öffnen aktualisieren, ich habe zurzeit nur einen Botton erstellt (Button geht anfangs auch mal i.O.)


Nur die Roten Werte (QM?) übertragen und zusätzlich die Orangen Werte.
In der richtigen Tabelle sind dazwischen noch mehrere Spalten die nur frei stehen.
Anfang und Ende sollte auch nicht stehen.

kann mir jemand helfen? :):)

LG


Angehängte Dateien
.xlsm   übertragen.xlsm (Größe: 21,14 KB / Downloads: 3)
Antworten Top
#2
Hallo,

eine Lösung mit M-Code (Power Query).
Voraussetzung: Namenszuweisung QM1_bis_QM7 für den Bereich A2:F11.

Code:
let
   Source = Excel.CurrentWorkbook(){[Name="QM1_bis_QM7"]}[Content],
   #"Promoted Headers" = Table.PromoteHeaders(Source, [PromoteAllScalars=true]),
   #"Changed Type" = Table.TransformColumnTypes(#"Promoted Headers",{{"ANFANG", type text}, {"Wert A", Int64.Type}, {"Wert B", type number}, {"Wert C", type number}, {"Wert D", type number}, {"Wert E", type number}}),
   #"Removed Columns" = Table.RemoveColumns(#"Changed Type",{"Wert B", "Wert D"}),
   #"Filtered Rows" = Table.SelectRows(#"Removed Columns", each ([ANFANG] <> "ENDE"))
in
   #"Filtered Rows"
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Antworten Top
#3
Hallo,
ein Vorschlag von mir:

in ein normales Modul: (kann auch dem Button zugeordnet werden)
Code:
Sub copyQMWerte()
'
Dim iErsteZeile As Integer, iLetzteZeile As Integer
Dim c As Range
'
   With Sheets("Tabelle2")
       'ggf. Ziel-Bereich löschen?
       .Range(.Cells(3, "A"), .Cells(.Cells.SpecialCells(xlCellTypeLastCell).Row, .Cells.SpecialCells(xlCellTypeLastCell).Column)).Clear
   End With
   With Sheets("Tabelle1")
       Set c = .UsedRange.Find("Wert A", LookIn:=xlValues)
       If Not c Is Nothing Then
           iErsteZeile = c.Row + 1
           iLetzteZeile = c.End(xlDown).Row
           Sheets("Tabelle2").Range("A3").Resize(iLetzteZeile - iErsteZeile + 1, 1).Value = .Range(.Cells(iErsteZeile, "A"), .Cells(iLetzteZeile, "A")).Value
           Sheets("Tabelle2").Range("B3").Resize(iLetzteZeile - iErsteZeile + 1, 1).Value = .Range(.Cells(iErsteZeile, "B"), .Cells(iLetzteZeile, "B")).Value
           Sheets("Tabelle2").Range("C3").Resize(iLetzteZeile - iErsteZeile + 1, 1).Value = .Range(.Cells(iErsteZeile, "D"), .Cells(iLetzteZeile, "D")).Value
           Sheets("Tabelle2").Range("D3").Resize(iLetzteZeile - iErsteZeile + 1, 1).Value = .Range(.Cells(iErsteZeile, "F"), .Cells(iLetzteZeile, "F")).Value
       End If
   End With

End Sub

in den Codebereich deiner "Tabelle2":

Code:
Private Sub Worksheet_Activate()
Call copyQMWerte
End Sub
Gruß
Uwe

Feedback? Aber selbstverständlich ;)
Antworten Top
#4
hi,

vielen Dank in der Zwischenzeit =)
hab grad ein anderes Problem das ich zuerst lösen muss, dazu separater Beitrag,
dann wende ich mich dem zu und gebe Rückmeldung was geklappt hat =)


danke !!! ihr seit die besten!!!
Antworten Top


Gehe zu:


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