Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1336to1340
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
VBA - Zeilen zählen und weiterverwenden
12.11.2013 09:39:30
Malte
Hallo,
ich bin neu in der VBA Programmierung und komme grad weder mit meinem Verständnis noch mit suchen weiter.
Ich habe eine Tabelle, welche in Spalte "C" Kürzel von Monaten hat (diese sind jedoch nicht fix, also häufigkeit von "Jan" variiert).
In den Spalten weiter hinten werden Berechnungen durchgeführt. Allerdings dauer es recht lange wenn ich die Formel über die gesamte Tabellenlänge berechnen lasse.
Was ich gern hätte:
Ein Makro das in Spalte "C" nach "Jan" sucht und in Spalte "L" eine Formel für alle "Jan" einträgt.
Leider weiß ich, wie oben geschildert, nicht mehr weiter.
Ich hoffe jmd kann/möchte mir helfen und danke schonmal im Voraus.
Malte

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA - Zeilen zählen und weiterverwenden
12.11.2013 11:01:47
GuentherH
Hallo Malte,
vielleicht solltest Du auch Deine Formeln optimieren.
hier ein Beispiel nach Deiner Spezifikation
https://www.herber.de/bbs/user/88050.xlsm
beste Grüße,
Günther

AW: VBA - Zeilen zählen und weiterverwenden
12.11.2013 13:01:19
Malte
Hallo Günther,
vielen Dank für die Antwort. In meiner Tabelle sind die Monate sogar noch etwas einfacher aufgebaut, sie sind sortiert. D.h. es fängt mit x - mal Jan and bis zu x - mal Dec. Es handelt sich um eine monatliche Auswertung. Wenn diese z.B. im Jan durchgeführt wird, muss wie oben beschrieben in Spalte "L" eine Formel eingetragen werden, die über den SVerweis Verkäufe des jeweiligen Monats passend zu dem Artikel raussucht.
Ich dachte, damit es nicht so lange braucht um das ganze zu berechnen, mache ich die Formel nicht über die ganze Spaltenlänge sondern nur in dem Bereich wo in Spalte "C" "Jan" steht.
Alternativ könnte ich natürlich das ganze auch manuell machen, aber liebsten hätte ich, wenn Excel sich selbst raussucht bis wo die Formel zu kopieren ist.

Anzeige
AW: VBA - Zeilen zählen und weiterverwenden
12.11.2013 13:40:35
GuentherH
Hallo Malte,
sorry, aber ich versteh' nur Bahnhof!
Den Code kannst Du Dir ja deiner Wunschformel entsprechend anpassen.
Denkbar wäre auch, dass eine Formel aus einem Vorgabefeld kopiert wird.
Leider ist meine Glaskugel heute etwas getrübt, so dass ichohne eindeutige Beschreibung und ohne Musterdatei keine Komplettlösung zaubern kann.
beste Grüße,
Günther

AW: VBA - Zeilen zählen und weiterverwenden
12.11.2013 13:57:24
Malte
Sorry, ich versuchs nochmal. Also vorweg :Es handelt sich um eine monatliche Auswertung die in einer Datei fortgeführt werden soll. Diese besteht aus download Sheets und einem Auswertungssheet (welches ich in sehr vereinfachter Form hochgeladen habe) https://www.herber.de/bbs/user/88052.xlsx.
Ich hätte nun gerne abhängig von dem Monat den ich auswerte z.B. Jan, dass Excel abhängig von Spalte "A" in Spalte "E" und "F" eine Formel (momentan denke ich da an einen Sverweis) ausfüllt. Allerdings hätte ich gerne die Formel "Monat für Monat" eingetragen, damit ich schneller zum Ergebnis komme. Außerdem werden die Daten aus den Downloads nach jeder Auswertung gelöscht, um die Dateigröße nicht zu sprengen.
Meine Vorstellung war nun, dass es z.B. ein Makro gibt Jan, welches in die Zeilen mit Jan in "E + F" die Formel einträgt, und anschließend die Werte fixiert. Damit ich im nächsten monat das ganze für Feb machen kann. In meiner Version würde dann pro Monat ein Makro entstehen, oder ist das total falsch und kompliziert gedacht?

Anzeige
AW: VBA - Zeilen zählen und weiterverwenden
12.11.2013 15:47:58
GuentherH
Hallo Malte,
ich bitt um Entschuldigung! Beim Speichern ist das Makro, das Du Dir anpassen solltest verlorengegangen! damit war meine 88050.xlsm ja Schrott!
Hier nun der Code angepasst an Deine Datei mit Eingabe von Monat und Schalter ("Ja"/"Nein") für Formeln oder Werte
https://www.herber.de/bbs/user/88053.xlsm
Du musst halt Deine Wunschformel in den Code einbauen.
probier mal,
Günther

AW: VBA - Zeilen zählen und weiterverwenden
13.11.2013 15:12:04
Malte
Hallo Günther,
danke für den Code, was er machen soll, verstehe ich glaube ich:
in der Spalte von den Monaten nach in Checkbox eingegebenen Monat suchen. Zweite Checkbox wandelt Formel direkt in Werte um (falls "JA"). D.h. die Formel taucht nicht mehr auf. Das ganze läuft in einer Schleife, bis alle mit Monat "x" abgearbeitet sind? Find ich klasse die Lösung und vorallem läuft es viel schneller als aktuell :). Ich habe den Code auf meine Tabelle angepasst:
Läuft soweit, wie gesagt sauber - bisauf die Formel :/. Der Zellbezug zum berechnen muss sich immer auf die aktuelle Zeile beziehen... Weißt du was ich meine?
Also Zeile A2 IF(And(A2=3000,B2=""AM""),VLookup(I2,'Download MX AM'!J:Q,6,0),IF(AND(A2=3000,B2=""OE""),Vlookup(J2,'Download MX'!A:M,11,0),Vlookup('Auswertung'!J2,Download!B:O,10,0)))"
Zeile A155 IF(And(A155=3000,B155=""AM""),VLookup(I155,'Download MX AM'!J:Q,6,0),IF(AND(A155=3000,B155=""OE""),Vlookup(J155,'Download MX'!A:M,11,0),Vlookup('Auswertung'!J155,Download!B:O,10,0)))"
Da ich vorher die Formel per VBA runterkopiert habe, ging das automatisch.
Entsteht mir ein großer Nachteil bei Verwendung von "formula" anstelle von "formulaR1C1"?
Vielen Dank!
Malte

Anzeige
AW: VBA - Zeilen zählen und weiterverwenden
13.11.2013 15:15:07
Malte
Sorry, kann nicht editieren...
Würde sich mein Problem nicht in luft auflösen, wenn ich meine Formel in FormulaR1C1 umschreibe? Da er dann immer x Spalten nach links gehen würde? Ich weiß allerdings nicht, ob ich den Vlookup komplett umgeschrieben bekomme :/

AW: VBA - Zeilen zählen und weiterverwenden
14.11.2013 08:33:30
GuentherH
Hallo Malte,
Ein Nachteil entsteht Dir nur, wenn das Makro auch auf anderen Rechnern laufen soll.
Ich verwende bei Makro's immer FormulaR1C1 da damit ein eindeutiges Format definiert ist.
Formula und Formulalocal sind da einstellungs- bzw. installations-abhängig und ich hatte vor Verwendung von FormulaR1C1 Probleme mit unterschiedlichem Verhalten zwischen Excel Deutsch und Excel MUI.
Zum Ermitteln der richtigen Formel schreibe ich diese in eine Zelle und lasse sie mit debug.print Zelle.FormulaR1C1 im Direktfenster ausgeben.
beste Grüße,
Günther
Anzeige

302 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige