Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Markierte Zellen & Ergebnisse anzeigen
#21
Hallo Uwe,

jetzt hast du aber noch was am Code geändert richtig? Ich durchblicke ihn trotzdem noch nicht um ihn auf meiner eigentlichen komplexeren Tabelle anzuwenden.

Ich habe nochmal ein Bild gemacht, da er scheinbar auch umgekehrte Werte zählt und somit mehr Ergebnisse anzeigt als er sollte. Nur die Werte aus dem grau hinterlegten Bereich spielen eine Rolle. Ich glaube du musst mit mir den Code mal Zeile für Zeile durch gehen  Shy


[Bild: tabelle2.jpg]

Beim Wert 110 gibt er mir sogar 10 Ergebnisse aus obwohl es nur 2 sein dürften.
Zitieren
#22
Hallo,
 
so ist jetzt noch einfacher, nachdem du gezeigt hast welche Summen aus der Ergebnisvorgabe gefunden werden sollen und aus welchen Zusammenhang diese resultieren.
Jetzt sind es nur noch 2 2D Schleifen.
Da es vorkommen kann, dass in der Formelausgabe ein Wert fehlt, habe ich dies in der Ausgabe ausgeschlossen.
 
.xlsm   Gleiche Summen finden.xlsm (Größe: 16,28 KB / Downloads: 1)

Gruß Uwe
Zitieren
#23
Hallo,
 
ich habe deine PN gelesen. Das wird mit Formeln alleine nichts, da Klickereignisse verarbeitet werden.
Was ich nicht verstehe, warum du jetzt erst die tatsächlichen Zusammenhänge erklärst.
 
Zum Verständnis: Du gibst Dämmung 200 mm ein. Daraufhin soll einmal rng_1 auf Treffer und rng_2 auf Treffer geprüft und deren Ergebnisse getrennt in Spalte E bzw. G ab Zeile 23 ausgegeben werden. Wenn ja, ist das kein Problem.
Was ich nicht verstehe, wie die Ausgaben in der Tabelle rechts daneben erzeugt werden soll. Da fehlen mir die Zusammenhänge.
Meine Vermutung: du klickst in die Tabelle und die mit dem markierten Wert im Zusammenhang stehende Daten (wo die auch immer sind) werden in die 2. untere Tabelle ausgegeben.
Formeln reagieren nicht auf Klickereignisse. Das geht nur mit VBA.
 
Gruß Uwe
Zitieren
#24
Hallo Uwe,

entschuldige die Verwirrung, ich wollte den Code erstmal in "einfacher" Form verstehen, daher bin ich nicht auf die unterschiedlichen Ranges eingegangen, im Nachhinein natürlich doof, da geb ich dir recht.
Die Werte die es anzeigen soll, habe ich mit VBA an den betreffenden Zellen hinterlegt. Das sieht so aus und funktioniert problemlos:

Code:
Dim exemptRanges As Range
    Set exemptRanges = Union(Range("J22:L28"), Range("N22:O28"))
       
    If Not Intersect(Target, Range("B4")) Is Nothing Then
        Sheets("Tabelle1").Range("L23:O28").Value = "-"
        Sheets("Tabelle1").Range("L26").Value = "12345"
        Sheets("Tabelle1").Range("O26").Value = "Artikel 12"
    ElseIf Not Intersect(Target, Range("D4")) Is Nothing Then
        Sheets("Tabelle1").Range("L23:O28").Value = "-"
        Sheets("Tabelle1").Range("L23").Value = "67890"
        Sheets("Tabelle1").Range("O23").Value = "Artikel 13"
usw.

Zitat:Zum Verständnis: Du gibst Dämmung 200 mm ein. Daraufhin soll einmal rng_1 auf Treffer und rng_2 auf Treffer geprüft und deren Ergebnisse getrennt in Spalte E bzw. G ab Zeile 23 ausgegeben werden. Wenn ja, ist das kein Problem.
Korrekt

Zitat:Was ich nicht verstehe, wie die Ausgaben in der Tabelle rechts daneben erzeugt werden soll. Da fehlen mir die Zusammenhänge.

Meine Vermutung: du klickst in die Tabelle und die mit dem markierten Wert im Zusammenhang stehende Daten (wo die auch immer sind) werden in die 2. untere Tabelle ausgegeben.

Richtig, ich klicke in die Tabelle und muss mir die genaue Zelle suchen und wenn ich das tue, wird mir unten rechts alles angezeigt. 
Ich möchte die Ergebnisse aus Splaten E & G aber gern mit der passenden Zelle in der Tabelle verlinken, damit ich sie nur anklicken muss und in der zweiten unteren Tabelle die wichtigen Informationen erscheinen.

Ich vermute das es da auch eine VBA Lösung gibt, denn eine Zelle mit einer anderen zu verlinken ist kein Problem, aber hier bringt es nichts, weil sich die Werte in der Zelle ja ändern.
Zitieren
#25
Hallo,
 
wie der letzte Punkt funktioniert und woher die Daten kommen keine Ahnung. Dazu hast du noch keine Aussagen getroffen.
Du schriebst was von Formeln. Dazu hatte ich dir schon angemerkt, dass eine Formel nicht auf Klickereignisse reagiert.
Anbei der Punkt 1 und 2 zusammengestellt.
 
.xlsm   schrauben-teller.xlsm (Größe: 29,18 KB / Downloads: 1)

Gruß Uwe
Zitieren
#26
Wow, das ging ja fix und funktioniert auch sehr gut. Top Exclamation Danke!

Ich habe die Tabelle nochmal mit den gefütterten Daten hinter den Zellen hochgeladen. Nicht hinter jeder Zelle sind Werte hinterlegt aber hinter den Fett markierten Zahlen in der Tabelle auf jeden Fall. 

Um beim Beispiel 200 zu bleiben. Wenn du auf die Zelle klickst, erscheinen unten rechts nun die Daten dazu. Ich wollte aber auch, dass es diese Daten anzeigt wenn ich unten Links auf das Ergebnis klicke, z.B. 145+80. Der Cursor springt zwar zu L7 aber er aktiviert sie nicht.

Wäre es auch möglich alle Zellen bei denen jetzt eine 0 hinterlegt ist (Zeile 1 und hälfte der 2. Zeile) aus der Berechnung zu nehmen? Diese Werte und Ergebnisse sind in der Praxis falsch und nicht umsetzbar. Da würde ich am Ende gern einfach einen "-" in die Zeile schreiben statt einer "0".

Kommt bei dir auch eine Fehlermeldung wenn du aus versehen in eine leere Zelle unter den Ergebnissen klickst?


Angehängte Dateien
.xlsm   schrauben-teller.xlsm (Größe: 41,56 KB / Downloads: 1)
Zitieren
#27
Hallo,

die Werte werden nun übergeben.

1. zu deiner Frage:

Zitat:Wäre es auch möglich alle Zellen bei denen jetzt eine 0 hinterlegt ist (Zeile 1 und hälfte der 2. Zeile) aus der Berechnung zu nehmen? Diese Werte und Ergebnisse sind in der Praxis falsch und nicht umsetzbar. Da würde ich am Ende gern einfach einen "-" in die Zeile schreiben statt einer "0".

Die Zeile 1 wird in den Schleifen nicht abgefragt.
In Zeile 2 werden nur Werte abgefragt und ausgegeben, welche relevant sind. 
rng_1 Spalten werden in Zeile 2 direkt abfragt.
rng_2 Spalten fragen in die Werte der Zellen in Zeile 2 aus rng_1 ab.
Wie kommst du auf die Idee, dass es so nicht ist.
 
Zu deiner Werteübergabe:
Diverse unsinnige Dinge, welche im Modul des Tabellenblattes nicht benötigt werden, habe ich entfernt (unnützer Code).
Solche langen Prozeduren auch boshaft Spaghetticode genannt, macht man einfach nicht. 
Dafür legt man eine 2. Tabelle an.
Die 1. Spalte enthält die Zelladresse 2. bis letzte Spalte die Werte für die Tabelle (Ausgabe) unten rechts. Dann sucht man den Wert der markierten Zelle mit der Methode .Find und übergibt die gefundene Zeile in ein kleines Array und dann das Array in die Tabelle unten rechts.
Da braucht es nur ein paar Zeilen Code und wenn sich was ändert macht man die Anpassung in dieser Tabelle.
 
.xlsm   schrauben-teller(2).xlsm (Größe: 41,54 KB / Downloads: 2)

Gruß Uwe
Zitieren
#28
Hallo,

anbei mal der Umbau der Ausgabewerte in Tabelle. Diese ist eine Strg/T Tabelle und der Code ist dementsprechend angelegt. Der Code beschränkt sich nun auf das Erforderliche.
Diese Tabelle, in der die Ausgabewerte eingetragen stehen, habe ich bis Spalte G soweit vorhanden eingetragen. Der Rest ist nur noch Fleißarbeit.

.xlsm   Schrauben-Teller Ausgabewerte in Tabelle.xlsm (Größe: 52,12 KB / Downloads: 2)

Gruß Uwe
Zitieren
#29
Hallo Uwe,

vielen Dank für die schnelle Hilfe. Für mich hatte das mit dem langen Code gut funktioniert. Im Grunde ist es ja die gleiche Arbeit, nur eben auf einer weiteren Tabelle nicht im Code selber hinterlegt. Fleißarbeit ist mein Ding, ich werde die Werte alle in die Tabelle übernehmen.

Danke für die Erläuterungen hinter den Codes, dass hilft mir auf jeden Fall weiter zu verstehen.

Kann man noch etwas gegen den "Laufzeitfehler '5'" unternehmen wenn man aus Versehen unten links unter eins der Ergebnisse klickt?
Zitieren
#30
Diesen Code hatte ich der übersichthalber drin:
Code:
'Set exemptRanges = Union(Range("J22:L28"), Range("N22:O28"))   'Die Bereichzuweisung ist falsch!!
                                                                        'Union wird nirgends benötigt

Wenn ich außerhalb des angegebenen Bereiches klicke, verschwinden die Werte. So war es gedacht. Muss man aber vielleicht auch nicht machen. Würde ich in der Praxis mal testen.
Zitieren


Gehe zu:


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




Hinweis auf Angebot Excel-Inside - lang    Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden um dein Anliegen zu besprechen.
   Gerne erstellen wir auf dieser Basis ein Angebot.
   Sende deine Anfrage einfach
per E-Mail an anfrage@excel-inside.de


Powerd and supported by Excel-InsideSolutions