Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1300to1304
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

An Klaus M.VDT :)

An Klaus M.VDT :)
14.03.2013 14:25:54
Judith
Hallo Klaus,
wie nicht anders zu erwarten war,hat mein Abteilungsleiter noch einen neuen Wunsch.
Jetzt sollen nicht mehr alle Wohnungen unter 7 € verglichen werden, sondern alle unter 6.50€
Ich habe die Bedingung in AH16 geändert und das Makro durchlaufen lassen.
Es kopiert auch brav die "neue" Formel nach unten hin durch, aber bei den Vergleichswohnungen ändert sich leider gar nicht?!
Habe ich vielleicht einen Fehler gemacht oder deine Ausführung letztes Mal falsch verstanden?!
https://www.herber.de/bbs/user/84362.xlsm
Liebe Grüße
Judith

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: An Klaus M.VDT :)
14.03.2013 14:36:34
Klaus
Hi Judith,
schön wieder von dir zu hören! Was genau läuft denn falsch?
Schau mal, dass sind alle Kaltmieten/m² (aus deiner Musterdatei):
5,04 €
4,43 €
6,68 €
4,98 €
5,94 €
4,98 €
4,90 €
4,84 €
6,00 €
5,19 €
5,11 €
Die erste Bedingung war, unter 7,00€. Das trifft zu auf .... alle! Jetzt eine neue Bedingung, unter 6,50€. Das trifft zu auf ... alle ausser einer.
Ich hab das Makro jetzt zweimal laufen lassen. Einmal mit
AH16 =IF((B16=B$15)*(O16*(W16=W$15)*(AA16=AA$15)*(K16>$K$15-10)*(K16

dann bekomme ich die 6,68€-Wohnung in Zeile 24 und 25 als Alternative1 vorgeschlagen. (WIE/OBJ/VE 1001/1/3)
Jetzt mit
AH16 =IF((B16=B$15)*(O16*(W16=W$15)*(AA16=AA$15)*(K16>$K$15-10)*(K16

Jetzt habe ich in Zeile 24 als Alternaive 1 die Wohung WIE/OBJ/VE 1001/5/17, und in Zeile 24 die Wohnung WIE/OBJ/VE 1001/5/16.
Also, für mich läufts. Wenn es bei dir nichts ändert, muss ich dir zwei ganz blöde Fragen stellen:
erstens: automatische Berechnungen an? und Zweitens: Hast du nur die Formel geändert, oder danach auch das Makro laufen lassen?
Grüße,
Klaus M.vdT.

Anzeige
AW: An Klaus M.VDT :)
14.03.2013 14:58:38
Judith
Mh. Entweder habe ich dich jetzt nicht richtig verstanden oder ich habe mich falsch ausgedrückt ;)
Wenn ich das Makro durchlaufen lasse, ändern sich bei mir durchaus ein paar Werte bei den Vergleichswohnungen.
Aber ich bekomme halt auch 3 Vergleichswohnungen für z.B. die 6.68€ Wohnung.
Das Makro soll sich nur die Wohnungen unter 6,50€ raussuchen und auch nur für diese Wohnungen Vergleichswohnungen suchen. Und das macht er bei mir leider nicht.
Wo kann ich überprüfen ob die automatische Berechnung an ist?!
Und ja ich habe das Makro durchlaufen lassen ;)
Liebe Grüße
Judith

Anzeige
AW: An Klaus M.VDT :)
14.03.2013 15:13:19
Klaus
Das Makro soll sich nur die Wohnungen unter 6,50€ raussuchen und auch nur für diese Wohnungen Vergleichswohnungen suchen. Und das macht er bei mir leider nicht.
Das heisst du willst einfach Zeile 18 ignorieren, da die dortige Wohnung über 6,50€ kostet?
Das würde ich mir ja GANZ einfach machen: Setze einen Autofilter auf Spalte O und filtere die fertige Liste nach Oder: Filtere nach >6,50€ und lösch rechts alle Vergleichswohnungen, dann nimm den Filter wieder weg.
Natürlich kann ich dir das jetzt auch als feste Bedingung in die Programmierung einbauen ... aber dann kommst du damit alleine nicht weiter, oder?
Grüße,
Klaus M.vdT.

Anzeige
AW: An Klaus M.VDT :)
14.03.2013 15:30:59
Judith
Ja im Prinzip soll er dann alles was darüber liegt ignorieren.
Schön wäre eine festgelegte Bedingung in der Formel oder im Makro (oder wahrscheinlich in beidem?!) wo ich bei jedem Änderungswunsch was die €/m² betrifft nur den Betrag ändern muss und das Makro mir dann für diese gewissen Wohnungen Vergleichswohnungen sucht.
Ist sowas möglich?!
Liebe Grüße
Judith

AW: An Klaus M.VDT :)
14.03.2013 15:55:47
Klaus
Ist sowas möglich?!
Ja.

AW: An Klaus M.VDT :)
14.03.2013 16:17:00
Judith
Präzisere Frage.
Ist so etwas möglich ohne das es einen heiden Aufwand benötigt?!
Und wenn ja wie mach ich sowas?! :)
Liebe Grüße

Anzeige
AW: An Klaus M.VDT :)
15.03.2013 08:33:16
Klaus
Hallo Judith,
ich verstehe dich so, dass
A) nur Vergleichswohnungen unter 6,50€/m² herangezogen werden dürfen und
B) Wohnungen für über 6,50€/m² keine Vergleichswohnungen aufgelistet bekommen und
C) der Wert 6,50€ sich je nach Laune deiner Vorgesetzen ändern kann :-) und
D) du nicht die fertige Lösung unkommentiert haben willst, sondern eine Erklärung dazu damit du es lernst
Zunächst mal die Formel. Hier nehme ich das 6,5 raus und ersetze es durch einen Zellbezug (ich nehm mal AH12, kannst du ja verschieben wie du willst)
=IF((B16=B$15)*(O16*(W16=W$15)*(AA16=AA$15)*(K16>$K$15-10)*(K16

In der Formel selbst musst du dich entscheiden, ob du "kleiner" oder "kleiner gleich" nimmst - ich hab mal "kleiner gleich" genommen.
Als zweites schauen wir im Makro nach, wie wir verhindern dass zu teuere Wohnungen einen Vergleich bekommen.
Im ersten Ansatz ist das einfach, mal in Pseudocode
WENN wohnung.aktuelleZeile.Preism² KLEINER GLEICH Zelle.AH12.Inhalt DANN
[Code ausführen]
SONST
[Code nicht ausführen]

Eine Kleinigkeit müssen wir noch beachten: die Vergleichswohnungen aus einem eventuellem "altem" Makrodurchlauf müssen gelöscht werden, sonst bleiben bei den teueren Wohnungen Artefakte stehen. Die 6,50€ müssen wir nicht fix im Makro schreiben, da sie bereits in einer Zelle verankert sind.
Statt den meterlangen Code hier rein zu kopieren, lade ich die Datei überarbeitet wieder hoch. Alle im Makro geänderten Zeilen kommentiere ich, damit du die Änderung selbst nachvollziehen kannst.
https://www.herber.de/bbs/user/84378.xlsm
Wenn du die Zelle, in der der Vergleichspreis "6,50€" steht, in der Tabelle verschiebst: Denk daran, auch im Makro den Bezug dahin zu aktualisieren!
dPreis = ActiveSheet.Range("AH12").Value 'Vergleich bis 6,50€/m² (Wert aus Zelle)
Nu aber, oder? :-) Heidenaufwand würd ich das nicht nennen. Monieren könnte man am ehesten, dass das ganze Programm mit einer sehr heißen Nadel gestrickt ist, aber das ist eben so wenn die Werten Herrn Chefs zwischendurch Sonderwünsche reinrufen.
Grüße,
Klaus M.vdT.

Anzeige
AW: An Klaus M.VDT :)
15.03.2013 09:21:02
Judith
Guten Morgen Klaus,
A) Die Vergleichswohnungen sollen nur nach Größe, Bad, Balkon und Stadtteil gefilter werden, nicht nach m². Im Endeffekt suche ich ja Vergleichswohnungen, damit ich die Miete anhand derer erhöhen kann.
B) C) und D) korrekt :)
Hab mich gerade mal in das Makro eingelesen. Danke, dass du das immer alles so schön kommentierst, das hilft echt gut beim verstehen :)
Wenn ich jettz in Bezug auf A) ändern möchte, dass alle Wohnungen als Vergleichswohnungen genommen werden dürfen, welchen Teil des Makros muss ich dann umändern?!
dPreis = ActiveSheet.Range("AH12").Value 'Vergleich bis 6,50€/m² (Wert aus Zelle)
Den?
Liebe Grüße
Judith

Anzeige
AW: An Klaus M.VDT :)
15.03.2013 09:35:28
Klaus
Hi Judith,
Danke, dass du das immer alles so schön kommentierst, das hilft echt gut beim verstehen :)
Witzigerweise hilft das auch beim programmieren :-)
Das sollte sich jeder, der selbst programmiert, angewöhnen. Sonst schaut man irgendwann 2 oder 3 Jahre später in seinen eigenen Code und sieht nur noch Bahnhof.
A) Die Vergleichswohnungen sollen nur nach Größe, Bad, Balkon und Stadtteil gefilter werden, nicht nach m².
ich nehme an, du meinst KM/m². Denn nach m²+-10 wird ja tatsächlich gefiltert.
Wenn ich jettz in Bezug auf A) ändern möchte, dass alle Wohnungen als Vergleichswohnungen genommen werden dürfen, welchen Teil des Makros muss ich dann umändern?!
Ohm ... ich verstehe dich nicht? Ob eine Wohnung als Vergleichswohnung herangezogen wird, bestimmt nicht das Makro sondern die Formel in AH.
=IF((B16=B$15)*(O16*(W16=W$15)*(AA16=AA$15)*(K16>$K$15-10)*(K16

(O16 dieser Teil sagt, ziehe Wohnungen ÜBER 6,50€ per KM/m² nicht als Vergleich heran.
Wenn du diese Wohnungen eben DOCH als Vergleich heranziehen willst, schmeiss den Teil einfach aus der Formel heraus!
=IF((B16=B$15)*(W16=W$15)*(AA16=AA$15)*(K16>$K$15-10)*(K16
Dieser Teil des Makros
dPreis = ActiveSheet.Range("AH12").Value 'Vergleich bis 6,50€/m² (Wert aus Zelle)

übergibt "nur" den Wert 6,50€ in eine Variable. Ich mag es nicht, innerhalb eines Makros unnötig auf Zellen zu verweisen.
Um für die teueren Wohnungen über 6,50€/m²KM keine Vergleiche zu finden, sorgt dieser Teil:

'NEU 15/MAR/2013
'Prüfe, ob Preis = dPreis Then bVergleich = False
'NEU 15/MAR/2013
'wenn der Preis zu hoch ist, ignoriere diese Wohnung!
If bVergleich Then

das If bVergleich Then klammert den Vergleichswohnung-kopieren Makroteil ein. .Cells(lRowAkt, 15).Value ist der Preis der aktuell markierten Wohnung (aktuelle Zeile, Spalte 15: schau in der Tabelle nach!). Ist der Preis höher als 6,50€, wird die Variable bVergleich auf falsch gesetzt. Weiter unten ergibt die Zeile If bVergleich Then dann FALSCH, darum wird für DIESE Wohnung keine Vergleichswohnung gesucht.
Grüße,
Klaus M.vdT.

Anzeige
AW: An Klaus M.VDT :)
15.03.2013 10:34:59
Judith
Makro ist durchgelaufen, alles prima :)
Hab mir jetzt auch das Makro noch zweimal durchgelesen, dürfte ich jetzt wohl alles nachvollziehen können ;)
Das dürfte es jetzt auch erstmal gewesen sein, mit der Liste. Auf jeden Fall bis Montag.
Nochmal ein großes Dankeschön und ein schönes Wochenende :)
Liebe Grüße
Judith

ja, bis Montag! :-)
15.03.2013 10:43:58
Klaus
Hallo Judith,
Das dürfte es jetzt auch erstmal gewesen sein, mit der Liste. Auf jeden Fall bis Montag.
Am Montag möchte dein Chef dann sicherlich, dass du die Wohnungen noch nach "Teppich" und "Laminat" unterteilst oder sowas :-)
Ich bin mir sicher dass du das sogar selbst schaffst! Aber wenn was neues kommt, frag hier einfach wieder nach, ich/wir helfen immer gerne.
Grüße und auch dir ein schönes Wochenende,
Klaus M.vdT.
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige