Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1772to1776
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
Inhaltsverzeichnis

VBA Spinnt nach dem 3. Durchlauf

VBA Spinnt nach dem 3. Durchlauf
06.08.2020 15:21:02
Bernd
Guten Tag
Ich habe vor mit einem VBA den höchsten Wert in Spalte B ab B3 zu ermitteln. Damit es nicht zu lange dauert habe ich es auf B500 begrenzt.
Der größte Wert soll in Line Mitte geschrieben werden (mit Name aus A)
Danach der nächsthöhere Wert in Line Links.
Jetzt soll immer geschaut werden wo der Nächsthöhere Wert hingeschrieben werden soll.
Das ist abhängig davon welche Line den kleineren Wert hat.
Wenn eine der Beiden Lines 20 Namen hat, soll die Jeweilige andere Line bis 20 gefüllt werden.
Wenn beide Lines voll sind, soll mit den nächsten höheren Werten die Line Rechts befüllt werden.
Zweck ist es die ersten beiden Lines mit den Höchsten Werten zu füllen und die 3. Line mit dem höchsten Rest.
Jeweils bis 20 Einträge begrenzt.
Ziel: Gruppe 1 + 2 sind etwa gleich stark und der beste Rest geht in die 3. Gruppe.
Mein Problem ist dieser Part:
Sub Max()
'
Start:
' Maximum in Spalte B finden
Dim maxB As Variant
maxB = Clear
Worksheets("Tabelle1").Activate
Set finden = Cells.Find(WorksheetFunction.Max(Range("B3:B500")), LookIn:=xlValues)
maxB = finden.Row
If maxB = 2 Then GoTo Ende
Range("A" & maxB & ":B" & maxB).Select
Selection.Copy
Im weiteren Verlauf Lösche ich nach dem Einfügen die Zellen A+B heraus damit die Spalte B neu durchsucht werden kann.
Das ganze läuft auch gut 3x durch. Dann hängt sich maxB einfach auf und bleibt bei Wert Zeile 4 hängen.
Anbei habe ich die Tabelle angehängt.
https://www.herber.de/bbs/user/139502.xlsm
Bitte helft mir.
Ich habe schon verschiedene Versionen der Maximalerkennung versucht.
Diese sind Auskommentiert in dem Makro enthalten. Meist hat dabei irgendetwas nicht funktioniert, weshalb ich auf die jetzt aktivierte Version zurückgefallen bin.
Zur Info:
Ich hatte zwischendurch immer wieder das Makro in Zwischenschritten probiert und es hatte funktioniert.
Als ich die Begrenzung auf 20 pro Spalte einprogrammiert hatte, ging das ganze den Bach runter.
Obwohl ich den Programmteil mit der Maxerkennung nicht angefasst hatte.
Ich bin jetzt nach 3 Wochen stundenlanges versuchen einfach am ende.
Wahrscheinlich ist es irgendein Dummer Fehler meinerseits den ich einfach übersehe.
Wer auch immer mir hilft, ein Stoßgebet und ein herzliches Danke sei sein Lohn.
Danke

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Spinnt nach dem 3. Durchlauf
06.08.2020 18:10:10
onur
Häähh?
"Der größte Wert soll in Line Mitte geschrieben werden (mit Name aus A). Danach der nächsthöhere Wert in Line Links" - ES GIBT KEINEN NÄCHSTHÖHEREN WERT ALS DER HÖCHSTE WERT.
"Das ist abhängig davon welche Line den kleineren Wert hat." - die zuletzt beschriebene "LINE" hat immer den kleineren Wert.
Übnrigens, GOTO gibt es nur wegen der Abwärtskompatibilität, man benutzt ihn eigentlich seit den Achtzigern nicht mehr.
Mach doch mal ein Beispiel, wie es aussehen soll und erkläre dann auch, warum es so aussehen soll - ist berstimmt hilfreicher als dein wirrer Erklärungsversuch.
Anzeige
AW: VBA Spinnt nach dem 3. Durchlauf
07.08.2020 14:47:57
Bernd
Hallo Onur
Wahrscheinlich hattest du den Eintrag nicht fertig gelesen. im unteren Teil hatte ich geschrieben:
Im weiteren Verlauf Lösche ich nach dem Einfügen die Zellen A+B heraus damit die Spalte B neu durchsucht werden kann.
Damit ist der 1. höchste Wert aus der Spalte herausgelöscht und es existiert ein neuer höchster Wert.
Außerdem hatte ich eine Tabelle hochgeladen, die die Funktion erklären sollte. Ich weiß aber nicht ob das Makro auch darin eingebettet ist.
Wenn ein Wert 100 ist der nächste 40,20,15,10 und andere, kann es Vorkommen das der erste Wert um soviel höher ist, das der nächste ihn nicht überschreitet. Daher die Abfrage.
Was Funktioniert an GOTO nicht?
Da ich nicht weiß welches System der nächste User nutzt, habe ich das genommen was funktionieren sollte.
Das du meine Beschreibung als Wirr bezeichnet trifft mich schon.
Ich hatte einfach versucht so Detailliert wie möglich zu schreiben.
Hier nochmal das Makro als txt:
https://www.herber.de/bbs/user/139532.txt
Anzeige
AW: VBA Spinnt nach dem 3. Durchlauf
07.08.2020 15:33:10
Bernd
Leider wurde meine Frage aber noch nicht beantwortet daher habe ich jetzt noch mal Nachträglich das Kästchen aktiviert. Hatte ich zuvor leider vergessen.
AW: VBA Spinnt nach dem 3. Durchlauf
07.08.2020 17:53:29
onur
Natürlich habe ich den Beitrag zu Ende gelesen und die Datei heruntergeladen. Aber es ergibt nicht viel Sinn.
z. B.:"Lösche ich nach dem Einfügen die Zellen A+B heraus damit die Spalte B neu durchsucht" - Es gibt in Excel keine Zellen A oder B, höchstens Spalten. Wenn du Spalten meinst: Wenn die Spalte B gelöscht wurde, wo willst du noch was durchsuchen? Drücke dich bitte PRÄZISE aus, damit man nix "hineininterpretieren" muss.
"Wenn ein Wert 100 ist der nächste 40,20,15,10 und andere, kann es Vorkommen das der erste Wert um soviel höher ist, das der nächste ihn nicht überschreitet." - was soll ich mir DARUNTER jetzt vorstellen?
Und ich bat dich, in die Datei (von mir aus auf einem anderen Blatt) einzufügen, WIE es nachher aussehen soll, damit man sich was drunter vorstellen kan.
Anzeige
AW: VBA Spinnt nach dem 3. Durchlauf
10.08.2020 15:04:11
Bernd
OK Als ich sagte Das ich die Zellen A/B gelöscht habe meinte ich natürlich das ich damit die Zellen mit dem vorherigen höchsten Wert gelöscht werden. Du hast aber recht das ich das nicht explizit gesagt habe.
Das mit den Werten war als Beispiel das nicht immer die zuletzt beschriebene Linie den höchsten Wert hat. Dies bezog sich auf deine Aussage: "Das ist abhängig davon welche Line den kleineren Wert hat." - die zuletzt beschriebene "LINE" hat immer den kleineren Wert.
Gerne gebe ich auch eine neue Beispieldatei mit auf den Weg, die wie von dir gewünscht das Ergebnis anzeigt.
Hier kommt sie:
https://www.herber.de/bbs/user/139563.xlsm
Ich finde es erfreulich das du mir helfen willst und bin als nicht VBAler gerne bereit Sachdienlich und so Präzise als möglich zu Antworten.
Ich hoffe das dir die zur Verfügung gestellten Ausführungen und Dateien jetzt ermöglichen, mir auch zu helfen.
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige