Vergleich von Spalten
#1
Hallo,

ich habe 12 Monatsspalten mit den dazugehörigen Artikelnummern.

Es kann jedoch vorkommen das im Januar nicht alle Artikel aufgelistet sind wie im Dezember, sondern neue dazugekommen sind.

Jetzt bräuchte ich einfach einen neue Spalte mit all den Artikelnr (nur 1x) die im Jahr vorgekommen sind..

Beispiel ist im Anhang. Evtl mit einem Vergleich?

Grúß

Sven


Angehängte Dateien
.xlsx   Beispiel Vergleich.xlsx (Größe: 19,96 KB / Downloads: 10)
Top
#2
Hallo!
Als erstes solltest Du die Textzahlen in richtige Zahlen umwandeln, zum Beispiel mit diesem Makro:

Sub TextzahlenUmwandeln()
Dim Zelle As Range
Application.ScreenUpdating = False
With ActiveSheet.Range("A:L") '###hier die Spalte auswählen!###
  For Each Zelle In .SpecialCells(xlCellTypeConstants)
     If IsNumeric(Zelle) Then
        Zelle = CDbl(Zelle)
     End If
  Next
End With
End Sub

Als nächstes ermittelst Du mit =Anzahl(A:L) in einer beliebigen Zelle die Gesamtzahl der Art.-Nr., nämlich 1523

Dann F5 drücken, N1:N1523 eingeben Enter, damit ist der Bereich markiert.

Formel: =KKLEINSTE(A:L;ZEILE()) eingeben und mit Strg+Enter abschließen

Spalte kopieren, und als Wert einfügen.

Spalte markiert lassen, Daten, Duplikate entfernen für Spalte N

Ergebnis:
   

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
[-] Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:
  • sveninho11
Top
#3
... und als Full Service  :21: mal alles in ein Makro gepackt:

Sub MachsMirMal()
Dim Zelle As Range
Application.ScreenUpdating = False
With ActiveSheet.Range("A:L") '###hier die Spalte auswählen!### 
  For Each Zelle In .SpecialCells(xlCellTypeConstants)
     If IsNumeric(Zelle) Then Zelle = CDbl(Zelle)
  Next
End With
With ActiveSheet.Range("N1:N" & WorksheetFunction.Count(ActiveSheet.Range("A:L")))
   .Formula = "=SMALL(A:L,ROW())"
   .Formula = .Value
End With
ActiveSheet.Columns("N").RemoveDuplicates 1, xlNo
End Sub

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#4
Hallo,

mit einer einfachen Matrixformel in N6, N5 ist leer:


Code:
=MIN(WENN($A$6:$L$190>N5;$A$6:$L$190))

Matrixformel! Mit STRG+SHIFT+ENTER abschließen.

Ach ja, umwandeln der Texte in Zahlen:

in eine leere Zelle eine 1 schreiben, diese Zelle kopieren, ganzen Zahlenbereich markieren, Inhalte einfügen, multiplizieren.
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
[-] Folgende(r) 1 Nutzer sagt Danke an BoskoBiati für diesen Beitrag:
  • sveninho11
Top
#5
Hi Bosko!
Bei mir kommt da immer 0 heraus:

LMN
5
6270
74000
84850
96300
106310
118800
129570
Formeln der Tabelle
ZelleFormel
N6{=MIN(WENN($A$6:$L$190>N5;$A$6:$L$190))}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
Matrix verstehen

Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#6
Ergänzend:
Nach Umwandlung der Textzahlen in echte Zahlen funktioniert das.
Thumps_up

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#7
Hallo,

Tabelle1

N
61
73
84
95
106
117
128
139
1410
1512
1614
1719
1822
1927
2028
2130
2233
2338
2439
25400
Formeln der Tabelle
ZelleFormel
N6{=MIN(WENN($A$6:$L$190>N5;$A$6:$L$190))}
Enthält Matrixformel:
Umrandende
{ } nicht miteingeben,
sondern Formel mit STRG+SHIFT+RETURN abschließen!
Matrix verstehen

Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4.8
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Top
#8
Vielen Dank euch allen :)
Top
#9
Hallo,

als Bonbon noch eine Formel, die alle Artikelnummern auflistet, die nur einmal auftauchen:



Code:
=MIN(WENN(($A$6:$L$190>O5)*(ZÄHLENWENN($A$6:$L$190;$A$6:$L$190)=1);$A$6:$L$190))

in O6, ebenfalls eine Matrixformel. Kann etwas dauern, bis der Rechner fertig ist.
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Top


Gehe zu:


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