Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: index über mehrere spalten

index über mehrere spalten
17.07.2024 09:53:10
Karel
Guten Morgen

wegen Etiket label muss artikelnummer muss mehrfach eingegeben werden per formel index vergleich den dazugehörige daten einzulesen ist kein Problem
auf jeden Etiket kommt aber auch Anzahl der Kolli Zb. 1/3, 2/3 und 3/3 die daten liegen auch alle vor in unterschiedlichen Spalte

Itemnr K1 K2 K3 bis maximal K6
10.000 1/3 2/3 3/3
Wie kan ich dies per Formel löse

sehe beispieldate
https://www.herber.de/bbs/user/171051.xlsx

Beste grüße
Hans
Anzeige

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: index über mehrere spalten
17.07.2024 10:44:36
ralf_b
Hier fehlen noch Informationen.
Welche der Werte in den Spalten identifizieren den Datensatz eindeutig?
Was ist mit "Items"? Sind das immer nur 1? Was wenn es 2 sind? Welche Etiketten in diesem Fall?
Wenn du nicht alle Etiketten benötigst, druckst du dann trotzdem den ganzen Bogen?

22 Etiketten, davon 11 für Dubletten?
die Tabelle hat 13 Zeilen, pro Zeile/Datensatz max 6 Etiketten = 78 Etiketten

Wie möchtest du die denn so ausdrucken können?
Anzeige
AW: index über mehrere spalten
17.07.2024 11:07:19
Karel
Hallo

eindeutig ist die Artikelnummer die ist je Ordernr. nur einmalig vergeben

- Items ist ein VK Einheit, Kolli ist gesamt Anzahl der kartons
- über makro kopiere ich NUR die ausgefüllte Etiketten in ein ander Tabellenblatt bis bogen voll ist

- über formel
=FILTER(PO!I4:I310;PO!D4:D310=$M$4)
anhand Ordernummer betreffende Artikel ab

Bg
Karel
Anzeige
AW: index über mehrere spalten
17.07.2024 11:09:49
ralf_b
na wenn du sowieso schon mit makro arbeitest, dann kannst du das Ausfülen doch auch gleich damit erledigen lassen.
AW: index über mehrere spalten
17.07.2024 12:20:38
Karel
Hallo

für diese zweck gerne ein Formel
makro kopieren geht noch, ausfühlen per makro übersetigt mein Level

Bg
Karel
AW: index über mehrere spalten
17.07.2024 13:49:58
ralf_b
beim Makro können wir dir hier auch behilflich sein.
Anzeige
AW: index über mehrere spalten
17.07.2024 15:11:25
Karel
dan gerne Lösung mit ein Makro
wenn es mit Formel nicht umsetzbar ist

Bg
Karel
AW: index über mehrere spalten
18.07.2024 00:03:59
ralf_b
bitteschön. Da ich nicht erkennen konnte wann du doppelte Labels drucken willst, habe ich das hier weggelassen. Das kann man aber noch nachbessern wenn du mir erzählst wie du das festlegst.
https://www.herber.de/bbs/user/171083.xlsm
Anzeige
AW: index über mehrere spalten
20.07.2024 07:18:05
Karel
Hallo Ralf,

schöne Ansatz :-)
war ein paar tagen beruflich unterwegs
und da hab ich noch was zeit gebraucht wie dein Code funktioniert
------------------------------------------------------
anbei komplette Datei Aufbau
https://www.herber.de/bbs/user/171133.xlsm

Dein code haben ich getestet
deaktiviert Sehe Datei
'bogensave cntBogen
'clearBogen

dein Clearbogen extra angesteuert
-------------------------------------------------
gerne Anpassung
- Spalte P Standard wenn X dann Label generieren
- Makro .Cells(rownr, colnr).Offset(, 1) = Artnr nur wert übernehmen 10.023 ist 10023 Zahlenformat ist benutzerdefinierte (##.###)
sonst geht Formel nicht in untenstehende Zelle
- Spalte E Name wird nicht komplett in alle Labels kopiert
- Labels dürfen nur auf dieses Blatt ausgefüllt werden, wenn Zuwenig labels vorhanden dan hinzufügen

Kopieren Da hab ich noch mein alte code belassen nicht optimal aber geht
neue Tabelle Blatt anhand von wert Zelle A1 wird angelegt
komplette Layout wird 1:1 übernehmen
bei vielen Labels werden immer 5 labels auf ein DIN A4 abgebildet

Nachteil muss kopierbereich mit hand markieren, wünschenswert prüfen wieviel labels generiert und die komplett kopieren

Grüße
Karel
Anzeige
AW: index über mehrere spalten
20.07.2024 09:15:24
ralf_b
schöne Ansatz :-) du darfst gerne die Danke-Buttons benutzen.

- Spalte P Standard wenn X dann Label generieren


For Each rngRow In rngtab.Rows
If UCase(rngRow.Cells(4)) = "X" Then
--- alter Code ----
End If
Next


- Makro .Cells(rownr, colnr).Offset(, 1) = Artnr nur wert übernehmen 10.023 ist 10023 Zahlenformat ist benutzerdefinierte (##.###)
deswegen habe ich ja auch .text und nicht .value genommen. wenn du die Nr schon so formatierst, dann soll sie doch auch so verwendet werden
sonst geht Formel nicht in untenstehende Zelle Welche Formel? Der Code kommt ohne Formeln aus.
- Spalte E Name wird nicht komplett in alle Labels kopiert das ist nicht möglich. der Name fehlt dann schon in der Tabelle.
- Labels dürfen nur auf dieses Blatt ausgefüllt werden, wenn zu wenig Labels vorhanden dann hinzufügen Das hätte ich schon vorher wissen müssen.

- neue Tabelle Blatt anhand von wert Zelle A1 wird angelegt wie soll der Name vergeben werden wenn mehr als 1 neues Blatt erzeugt werden muß?
- bei vielen Labels werden immer 5 labels auf ein DIN A4 abgebildet und warum hast du dann 11 Labels zum ausfüllen vorgegeben? wenn du nur 5 vorgibst, dann wird bei meinem Code gleich ein neues Blatt mit den 5 Labels erzeugt.
- Nachteil muss kopierbereich mit hand markieren, wünschenswert prüfen wieviel labels generiert und die komplett kopieren was denn nun, 5 Labels oder alle Label? cntLabel = cntLabel + 1 zählt bereits die ausgefüllten Labels

du hast den Code unbrauchbar gemacht. durch das deaktivieren von "clearBogen" wird der volle Ausfüllbereich nicht geleert und es wird deshalb kein neues Label gefunden. Somit wird die Variable i = 0 gefüllt. In Folge gibt es eine Fehler in fillLabel() weil .Cells(rownr, colnr) hier rownr = 0 ist.

Du hast meine Frage nicht beantwortet wie die doppelten Label gefüllt werden. Immer oder nur wahlweise?

gruß

rb
Anzeige
AW: index über mehrere spalten
20.07.2024 10:22:03
Karel
Hallo Ralf,

Hmm. war fragen noch offen für sicherheit nochmal reingestellt

Du hast meine Frage nicht beantwortet wie die doppelten Label gefüllt werden. Immer oder nur wahlweise?
> immer doppelt nebeneinander zwei label je Kolli

- Spalte P Standard wenn X dann Label generieren
> hab ich hinbekommen

benutzerdefinierte (##.###)
deswegen habe ich ja auch .text und nicht .value genommen. wenn du die Nr schon so formatierst, dann soll sie doch auch so verwendet werden
> wegen bessere Lesbarkeit Zelle benutzerdefiniert format als ##.### definiert, hab ich jetzt rausgenommen für Spalte Q

- Spalte E Name wird nicht komplett in alle Labels kopiert das ist nicht möglich. der Name fehlt dann schon in der Tabelle.
> Problem gefunden Formel in Spalte D herunter kopiert

- Labels dürfen nur auf dieses Blatt ausgefüllt werden, wenn zu wenig Labels vorhanden dann hinzufügen Das hätte ich schon vorher wissen müssen.
> hab Bereich ausreichend weiter nach unten kopiert , aber für den fälle der fälle ein Hinweis einbauen wenn kein Bereich mehr vorhanden ist

- neue Tabelle Blatt anhand von wert Zelle A1 wird angelegt wie soll der Name vergeben werden wenn mehr als 1 neues Blatt erzeugt werden muß?
> Name vergeben ich an hand vom name in Spalte Q es kann auch gleiche Namen geben aber unterschiedlichen Ordernr. , wenn gleiche Namen dann werden labels in gleiche Tabellenblatt kopiert ansonst wird neue Tabelle Blatt angelegt.

- bei vielen Labels werden immer 5 labels auf ein DIN A4 abgebildet und warum hast du dann 11 Labels zum ausfüllen vorgegeben? wenn du nur 5 vorgibst, dann wird bei meinem Code gleich ein neues Blatt mit den 5 Labels erzeugt.
> es werden 10 labels 2 x 5 wegen doppelte auf ein DIN A4 Blatt ausgegeben diese Datei geht als PDF nach Lieferant im Ausland und die drücken es auf ein Etikett DIN A4 Bogen aus je Kundenamen ein Kunden kann bzw. 30 labels (3 Bogen DinA4) haben mit unterschiedlichen Ordernr. oder nur 4 Labels ( 1 Bogen DinA4)

du hast den Code unbrauchbar gemacht. durch das deaktivieren von "clearBogen" wird der volle Ausfüllbereich nicht geleert und es wird deshalb kein neues Label gefunden. Somit wird die Variable i = 0 gefüllt. In Folge gibt es eine Fehler in fillLabel() weil .Cells(rownr, colnr) hier rownr = 0 ist.
> ich war am probieren und lernen, bogen leeren wollte ich gerne über extra Btn anstoßen

Bg Karel
Anzeige
AW: index über mehrere spalten
20.07.2024 10:22:46
Karel
Hallo Ralf,

Hmm. war fragen noch offen für sicherheit nochmal reingestellt

Du hast meine Frage nicht beantwortet wie die doppelten Label gefüllt werden. Immer oder nur wahlweise?
> immer doppelt nebeneinander zwei label je Kolli

- Spalte P Standard wenn X dann Label generieren
> hab ich hinbekommen

benutzerdefinierte (##.###)
deswegen habe ich ja auch .text und nicht .value genommen. wenn du die Nr schon so formatierst, dann soll sie doch auch so verwendet werden
> wegen bessere Lesbarkeit Zelle benutzerdefiniert format als ##.### definiert, hab ich jetzt rausgenommen für Spalte Q

- Spalte E Name wird nicht komplett in alle Labels kopiert das ist nicht möglich. der Name fehlt dann schon in der Tabelle.
> Problem gefunden Formel in Spalte D herunter kopiert

- Labels dürfen nur auf dieses Blatt ausgefüllt werden, wenn zu wenig Labels vorhanden dann hinzufügen Das hätte ich schon vorher wissen müssen.
> hab Bereich ausreichend weiter nach unten kopiert , aber für den fälle der fälle ein Hinweis einbauen wenn kein Bereich mehr vorhanden ist

- neue Tabelle Blatt anhand von wert Zelle A1 wird angelegt wie soll der Name vergeben werden wenn mehr als 1 neues Blatt erzeugt werden muß?
> Name vergeben ich an hand vom name in Spalte Q es kann auch gleiche Namen geben aber unterschiedlichen Ordernr. , wenn gleiche Namen dann werden labels in gleiche Tabellenblatt kopiert ansonst wird neue Tabelle Blatt angelegt.

- bei vielen Labels werden immer 5 labels auf ein DIN A4 abgebildet und warum hast du dann 11 Labels zum ausfüllen vorgegeben? wenn du nur 5 vorgibst, dann wird bei meinem Code gleich ein neues Blatt mit den 5 Labels erzeugt.
> es werden 10 labels 2 x 5 wegen doppelte auf ein DIN A4 Blatt ausgegeben diese Datei geht als PDF nach Lieferant im Ausland und die drücken es auf ein Etikett DIN A4 Bogen aus je Kundenamen ein Kunden kann bzw. 30 labels (3 Bogen DinA4) haben mit unterschiedlichen Ordernr. oder nur 4 Labels ( 1 Bogen DinA4)

du hast den Code unbrauchbar gemacht. durch das deaktivieren von "clearBogen" wird der volle Ausfüllbereich nicht geleert und es wird deshalb kein neues Label gefunden. Somit wird die Variable i = 0 gefüllt. In Folge gibt es eine Fehler in fillLabel() weil .Cells(rownr, colnr) hier rownr = 0 ist.
> ich war am probieren und lernen, bogen leeren wollte ich gerne über extra Btn anstoßen

Bg Karel
Anzeige
AW: index über mehrere spalten
20.07.2024 13:30:26
ralf_b
hier noch ein letzter Hinweis. Für die doppelten Label in der Zeile auf True stellen. Aber das ist so offensichtlich das du es wahrscheinlich schon umgesetzt hast.
  Call fillLabel(i, Ordernr, Customer, Name, Artnr, Items, Kolli, cnt, False)

Call fillLabel(i, Ordernr, Customer, Name, Artnr, Items, Kolli, cnt, True)
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige