Hallo Excel Profis!
Ich habe ein Problem, habe 2 verschiedene Tabellen wobei bei der einen manuell eine Eingabe(Tabelle1) erfolgt, und bei der 2. Tabelle soll die 1. Tabelle ausgelesen werden. es soll jeder Zahlenwert nur einmal vorkommen und dazu werden mit Summewenn die Meter aufsummiert!
Ich habe schnell eine Beispieldatei erstellt!
Mein Problem ist jetzt dass die Zahlenwerte welche über Summewenn verglichen werden zu 90% bekannt sind, wenn allerdings ein Wert vorkommt der noch nicht in Tabelle2 vorhanden ist dann soll der aus der Tabelle 1 in die Tabelle 2 übernommen werden (egal wie oft der Wert vorkommt in Tabelle 2 darf er nur einmal stehen!!)
Ich weiß nicht wie ich das realisieren soll, dass ich die Tabelle 1 überprüfe und Werte die in Tabelle 2 noch nicht vorkommen an diese anhänge!
Ich hoffe das war verständlich!
Wäre super wenn mir wer helfen könnte
vielen dank
philipp
(19.11.2014, 19:52)turbophil schrieb: [ -> ]...Ich hoffe das war verständlich...
Hallo, nimm dies Makro setzte es in Modul1 rein, einen Commandbutton auf Tabellenblatt1 mit Verweis auf Makro1
Nach dem Eintragen den Button klicken ...
und schau ins Tabellenblatt2
Apropos: erstelle ein Tabellenblatt4
hoffe geholfen zu haben..
mal eben mit Makrorecorder aufgezeichnet.
Code:
Option Explicit
Sub Makro1()
'
' Makro1 Makro
'
Application.ScreenUpdating = False
'
Columns("A:B").Select
Selection.Copy
Sheets("Tabelle4").Select
Range("A1").Select
ActiveSheet.Paste
Columns("B:B").Select
Application.CutCopyMode = False
Selection.Cut
Range("E1").Select
ActiveSheet.Paste
Rows("1:2").Select
Selection.Delete Shift:=xlUp
Columns("A:A").Select
ActiveSheet.Range("$A$1:$A$20").RemoveDuplicates Columns:=1, Header:=xlYes
ActiveWorkbook.Worksheets("Tabelle4").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Tabelle4").Sort.SortFields.Add Key:=Range("A1"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Tabelle4").Sort
.SetRange Range("A2:A20")
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Columns("E:E").Select
ActiveSheet.Range("$E$1:$E$20").RemoveDuplicates Columns:=1, Header:=xlYes
ActiveWorkbook.Worksheets("Tabelle4").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Tabelle4").Sort.SortFields.Add Key:=Range("E1"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Tabelle4").Sort
.SetRange Range("E2:E20")
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
ActiveWindow.SmallScroll Down:=0
Selection.Copy
ActiveWindow.SmallScroll Down:=-42
Range("B1").Select
ActiveSheet.Paste
Columns("A:B").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("Tabelle2").Select
Range("A1").Select
ActiveSheet.Paste
Application.ScreenUpdating = True
End Sub
Danke für die Antwort!
Ich würde das ganze allerdings gerne ohne Makro und Button lösen, da es im Hintergrund automatisch ablaufen soll, weil laufend neue Daten dazu kommen...
Vielleicht hat jmnd eine Idee ob es mittels Formeln möglich ist!
lg
Wie schnell ist denn ein Button zwischen den Eingabe geklickt, als ein fortlaufende Aktualisierung (Rechenintensiv).
Formeltechnisch müssen da die Prof'z dran
Hallo,
z.B. so:
Arbeitsblatt mit dem Namen 'Tabelle2' |
| A | B |
4 | VKL | Länge |
5 | 7/9,09 | 5 |
6 | 7/11,67 | 10 |
7 | 7/14,22 | 7 |
8 | 7/16,77 | 3 |
9 | 7/21,9 | 3 |
10 | | 0 |
11 | | 0 |
Zelle | Formel |
A6 | {=WENNFEHLER("7/"&KKLEINSTE(WENN(WECHSELN(Tabelle1!$A$4:$A$16;"7/";0)*1>WECHSELN(A5;"7/";0)*1;WECHSELN(Tabelle1!$A$4:$A$16;"7/";0)*1);1);"")} |
Achtung, Matrixformel enthalten! |
Die geschweiften Klammern{} werden nicht eingegeben. |
Verlassen Sie den Zelleneditor mit Strg+Shift + Enter, statt Enter alleine. |
Diese Tabelle wurde mit Tab2Html (v2.4.1) erstellt. ©Gerd alias Bamberg |
Hi,
(19.11.2014, 20:18)WergibtmirRat schrieb: [ -> ]Wie schnell ist denn ein Button zwischen den Eingabe geklickt, als ein fortlaufende Aktualisierung (Rechenintensiv).
außerdem kann das Makro doch über das Change-Ereignis des Worksheets automatisch starten, dann startet es jedesmal, wenn sich im Tabellenblatt etwas ändert.
Danke euch allen für die Hilfe!!!
Hat mir wirklich geholfen
Habs jetzt doch mit einem Makro gelöst!!
lg