Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
764to768
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
764to768
764to768
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Artikelzuordnung

Artikelzuordnung
18.05.2006 16:52:52
Ralph

Die Datei https://www.herber.de/bbs/user/33757.xls wurde aus Datenschutzgründen gelöscht

Schönen Nachmittag,
ich habe ein riesen Problem und hoffe mir kann jemand helfen. Ich habe extra ein Test File beigefügt an dem man mein Problem erkennen kann.
In der Spalte A stehen bei mir Artikel und in den Spalten b und c Baugruppen. Ich muss jetzt in Spalte d zuerst einmal alle Baugruppen aus den Spalten b und c untereinander schreiben ohne das dabei eine Baugruppe doppelt angezeigt wird wird. Anschließend benötige ich eine Zuordnung die mir anzeigt welche Artikel alle aus den einzelnen Baugruppen bestehen. Also z.B. Baugruppe ab besitzt die Artikel 1 4 7 13 usw. Baugruppe cde die Artikel 2 5 8 usw.
Kann mir jemand dabei helfen.
Danke

16
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Artikelzuordnung
18.05.2006 19:17:48
Peter
Hallo Ralph,
sieh mal, ob es das ist, was du gesucht hast:
https://www.herber.de/bbs/user/33761.xls
Viele Grüße Peter
Eine kurze Nachricht, ob es läuft, wäre nett - danke.
AW: Artikelzuordnung
19.05.2006 09:40:01
Ralph
Ja klappt prima.
Super, danke Dir Peter
AW: Artikelzuordnung
19.05.2006 09:49:35
Ralph
Wie bekomme ich es jetzt noch hin, damit die 0 und deren zuordnung nicht ausgewiesen wird?
AW: Artikelzuordnung
19.05.2006 11:54:58
Peter
Hallo Ralph,
ohne die Null-Baugruppe geht es so:
https://www.herber.de/bbs/user/33779.xls
Viele Grüße Peter
Eine kurze Nachricht, ob es läuft, wäre nett - danke.
Anzeige
AW: Artikelzuordnung
19.05.2006 14:40:02
Ralph
Klasse.
Läuft super.
Danke
AW: Artikelzuordnung
19.05.2006 15:51:39
Ralph
Kannst Du mir bitte noch sagen was ich ändern muss damit ich anzahl der zuvergleichenden Spalten erhöhen kann. also von a bis c zum Beispiel a-e.
Danke
AW: Artikelzuordnung
20.05.2006 11:57:49
Peter
Hallo Ralph,
in der beigefügten Mappe gibt es ein zweites Makro 'Abgleich_II', das im Tabellenblatt 'Tabelle2' die Spalten B - J (2 - 10) als Baugruppen absucht.
Leere Zellen und Zellen mit 0 (Null) werden übergangen.
Die Ergebnisse kommen in die Spalten K und L.
https://www.herber.de/bbs/user/33808.xls
Viele Grüße Peter
Eine kurze Nachricht, ob es läuft, wäre nett - danke.
Anzeige
AW: Artikelzuordnung
18.05.2006 23:56:22
Erich
Hallo Ralph,
probier doch mal die beiden Makros aus:
Option Explicit
Sub Umkehren1()
Dim zB As Long, sB As Integer, zE1 As Long, zE As Long, zEv As Long, ss As Integer
zE1 = 15
Cells(zE1, 4) = Cells(3, 2)
Cells(zE1, 5) = Cells(3, 1)
zE = zE1
For sB = 2 To 3
For zB = 6 - sB To Cells(Rows.Count, sB).End(xlUp).Row
For zEv = zE1 To zE
If Cells(zB, sB) = Cells(zEv, 4) Then
Cells(zEv, 5) = Cells(zEv, 5) & "," & Cells(zB, 1)
Exit For
End If
Next zEv
If zEv > zE Then
zE = zE + 1
Cells(zE, 4) = Cells(zB, sB)
Cells(zE, 5) = Cells(zB, 1)
End If
Next zB
Next sB
End Sub
Sub Umkehren2()
Dim zB As Long, sB As Integer, zE1 As Long, zE As Long, zEv As Long, ss As Integer
zE1 = 25
zE = zE1
Cells(zE1, 4) = Cells(3, 2)
Cells(zE1, 5) = Cells(3, 1)
Range(Cells(zE, 6), Cells(zE, 256)).ClearContents
For sB = 2 To 3
For zB = 6 - sB To Cells(Rows.Count, sB).End(xlUp).Row
For zEv = zE1 To zE
If Cells(zB, sB) = Cells(zEv, 4) Then
Cells(zEv, Cells(zEv, Columns.Count).End(xlToLeft).Column + 1) = Cells(zB, 1)
Exit For
End If
Next zEv
If zEv > zE Then
zE = zE + 1
Cells(zE, 4) = Cells(zB, sB)
Cells(zE, 5) = Cells(zB, 1)
Range(Cells(zE, 6), Cells(zE, 256)).ClearContents
End If
Next zB
Next sB
End Sub
Die Zeilen mit "ClearContents" im 2. Makro sind nur wichtig,
wenn das Makro mehrmals aufgerufen wird.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Artikelzuordnung
19.05.2006 09:41:05
Ralph
ja klappt prima,
Super danke Dir Erich.
AW: Artikelzuordnung
19.05.2006 09:49:13
Ralph
Wie bekomme ich es jetzt noch hin, damit die 0 und deren zuordnung nicht ausgewiesen wird?
AW: Artikelzuordnung
19.05.2006 10:35:53
Erich
Hallo Ralph,
so sollte die 0 wegbleiben:
Option Explicit
Sub ZordnungUmkehren()
Dim sB As Integer, zE As Long, zB As Long, zV As Long
'  Const zE1 = 1, sE = 1, zB1 = 3, sB1 = 2, sB2 = 3, komma = True
'  With Sheets(2)
Const zE1 = 18, sE = 4, zB1 = 3, sB1 = 2, sB2 = 3, komma = False
With Sheets(1)
Range(.Cells(zE1, sE), .Cells(Rows.Count, Columns.Count)).ClearContents
If komma Then
.Columns(sE + 1).NumberFormat = "@"
Else
.Columns(sE + 1).NumberFormat = "General"
End If
zE = zE1 - 1
For sB = sB1 To sB2
For zB = zB1 - (sB <> sB1) To Cells(Rows.Count, sB).End(xlUp).Row
If Cells(zB, sB) <> "0" Then                                      ' neu
For zV = zE1 To zE
If .Cells(zV, sE) = Cells(zB, sB) Then
If komma Then
.Cells(zV, sE + 1) = .Cells(zV, sE + 1) & "," & Cells(zB, 1)
Else
.Cells(zV, .Cells(zV, Columns.Count).End(xlToLeft).Column + 1) = _
Cells(zB, 1)
End If
Exit For
End If
Next zV
If zV > zE Then
zE = zE + 1
.Cells(zE, sE) = Cells(zB, sB)
.Cells(zE, sE + 1) = Cells(zB, 1)
End If
End If                                                            ' neu
Next zB
Next sB
End With
End Sub
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Artikelzuordnung
19.05.2006 14:39:22
Ralph
Super bestens geklappt danke
AW: Artikelzuordnung
19.05.2006 15:52:04
Ralph
Kannst Du mir bitte noch sagen was ich ändern muss damit ich anzahl der zuvergleichenden Spalten erhöhen kann. also von a bis c zum Beispiel a-e.
Danke
AW: Artikelzuordnung
19.05.2006 17:08:29
Erich
Hallo Ralph,
dazu brauchst du nur in der Const-Zeile die Werte für sB1 und sB2 anzupassen.
Bei sB1=2, sB2=3 stehen die Baugruppen in den Spalten B bis C (= 2 bis 3),
bei sB1=2, sB2=5 stehen die Baugruppen in den Spalten B bis D (= 2 bis 5).
Wenn die Ausgabe auf dem selben Sheet erfolgt, musst du wohl noch sE,
die erste Spalte für das Ergebnis, heraufsetzen, als etwa sE=6 oder 7 statt sE=4.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Artikelzuordnung
20.05.2006 19:09:37
Erich
Hallo Ralph,
ein wenig deutlicher wird die Rolle der Konstanten, wo du jetzt auch die Spalte mit den Artikeln festlegen kannst, damit:
   Sub ZordnungUmkehren()
Dim sB As Integer, sE As Integer, zB As Long, zV As Long, zE As Long
Const zA = 3, zE1 = 9, komma = False      ' 1. Zeile von Artikel, Ergebnis
'  (jeweils Zeilennummer der Überschrift)
Const sA = 1, sB1 = 2, sB2 = 5, sEe = 7   ' Spalte(n) Artikel, Bauteile, Ergebnis
Const komma = False                       ' Darstellung mit Komma oder einzeln
With Sheets(1)                            ' Blatt für Ergebnis
If .Name = ActiveSheet.Name Then _
sE = IIf(sEe <= sB2, sB2 + 1, sEe): sE = IIf(sE <= sA, sA + 1, sE)
Range(.Cells(zE1, sE), .Cells(Rows.Count, Columns.Count)).ClearContents
zE = zE1 - 1
For sB = sB1 To sB2
For zB = zA - (sB <> sB1) To Cells(Rows.Count, sB).End(xlUp).Row
If Not IsEmpty(Cells(zB, sB)) And Cells(zB, sB) <> "0" Then    ' ohne 0, leer
For zV = zE1 To zE
If .Cells(zV, sE) = Cells(zB, sB) Then
If komma Then
.Cells(zV, sE + 1) = .Cells(zV, sE + 1) & "," & Cells(zB, sA)
Else
.Cells(zV, .Cells(zV, Columns.Count).End(xlToLeft).Column + 1) _
= Cells(zB, sA)
End If
Exit For
End If
Next zV
If zV > zE Then
zE = zV     ' = zE + 1
.Cells(zE, sE) = Cells(zB, sB):  .Cells(zE, sE + 1) = Cells(zB, sA)
End If
End If                                                         ' ohne 0, leer
Next zB
Next sB
.Columns(sE).Rows(zE1 & ":" & zE).NumberFormat = "@"
.Columns(sE + 1).Rows(zE1 & ":" & zE).NumberFormat = IIf(komma, "@", "General")
End With
End Sub
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige