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

Zugriff auf Zelle, deren Wert sich ändert

Zugriff auf Zelle, deren Wert sich ändert
23.01.2019 15:42:26
Lare
Guten Tag Zusammen,
ich hoffe, ihr könnt mir weiterhelfen, denn ich sitze schon seit Tagen dran und bin kein Stück weitergekommen...
Ich habe hier zwei Arbeitsblätter, die Report und Einstellungen heißen. In Report gibt's eine bestimmte Zelle namens "Jahr" (z.B. 2015), die das Jahr vom Report darstellt. "Jahr" kann ein beliebiges Jahr sein und der Inhalt des Reports wird dementsprechend aktualisiert. Die Daten werden hier von einer Datenbank gezogen. In Einstellungen gibt es eine Tabelle "Liste", in der die Jahre eingegeben werden können, von denen man den Report ausdrucken möchte (z.B. 2015. 2016,...). Mit dem Code unten soll PDF-Reports von dem jeweiligen Jahr in "Liste" ausgedruckt werden.
Soweit funktioniert der Code fast. Leider nur fast, da die Schleife irgendwie ihre doppelte Arbeit macht. Am Ende bekommt man zwar drei Reports vom 2015, 2016 und 2017 ausgedruckt, was aber länger dauert, als es sein soll, denn bei zwei Einträgen (z.B. 2015, 2016) wiederholt sich die Schleife zweimal (=4 mal PDF drucken), bei drei Einträgen (2015, 2016 und 2017) dreimal (9 mal PDF drucken), usw.
Kann mir jemand sagen, woran es liegen könnte? :-(
Sub Drucken()
Dim Liste As Range
Dim Speicherpfad As String
Speicherpfad = Sheets("Pfad").Range("A1").Value
Call ScreenUpdating_OFF
For Each Liste In Range("C4:C104")
If Liste.Value  "" Then
Range("Jahr").Select: ActiveCell.Value = Liste.Value
Application.Run "CalcvonDB"
ActiveSheet.PrintOut PrintToFile:=True, PrToFileName:=Speicherpfad & "\" &  _
Dateiname_ohne_Endung & " " & Liste.Value & ".pdf"
End If
Next Liste
Call ScreenUpdating_ON
End Sub

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zugriff auf Zelle, deren Wert sich ändert
23.01.2019 15:56:19
Daniel
Hallo Lare,
bin mir nicht sicher ob es hilft, versuch mal .Cells hinter Range("C4:C104") zu setzen. Habe den Verdacht, dass er jedes Mal die ganze Range untersucht und nicht nur jede Zelle einzeln durchgeht und deshalb dann entsprechend alles pro Eintrag wiederholt. Kann aber auch völliger Blödsinn sein...
Grüße
Daniel
AW: Zugriff auf Zelle, deren Wert sich ändert
23.01.2019 16:13:38
Lare
Hi Daniel,
danke für deine Nachricht! :-)
Leider hat sich dadurch nichts geändert. Meine Vermutung wäre so: Die Zelle "Jahr" enthält durch bspw. Eingabe von 2015,2016,2017 in die Tabelle "Liste" insgesamt drei Werte, auch wenn die nach und nach ausgegeben wird. Ich habe versucht, diese Werte vom Jahr quasi einzeln auszugeben und zu speichern, bevor die PDF-Datei gedruckt wird. Ich habe aber noch keine Idee, wie ich das Ganze in dem Code umsetzen soll.
Ich hoffe, es ist verständlich genug!
LG
Lare
Anzeige
AW: Zugriff auf Zelle, deren Wert sich ändert
23.01.2019 16:22:33
Daniel
Die Beispieldatei würde da sehr helfen, ansonsten wird es schwierig für andere sich da rein zu denken.
AW: Zugriff auf Zelle, deren Wert sich ändert
24.01.2019 09:22:39
Daniel
So, ich weiß natürlich nicht, was "CalcvonDB" genau macht. Mir ist aber aufgefallen, dass dein Code ungenaue Ranges enthält. Die Liste zum Beispiel kann er nur durchgehen, wenn du dich im richtigen Blatt "Einstellungen" befindest. Die definierte Range "Report" verweist bei deiner Version auch auf das Blatt "Einstellungen" B4, was so eigentlich keinen Sinn macht. Wenn ich richtig liege, sollte das eigentlich auf das Blatt "Report" B4 verweisen?
Ich konnte es jetzt nur rudimentär testen, aber versuch mal Range("C4:C104") in Sheets("Einstellungen").Range("C4:C104") zu ändern und Range("Jahr") in Sheets("Report").Range("B4"). Wenn ich jetzt einfach die Werte aus B4 in der Schleife auslese, bekomme ich genau drei Ergebnisse 2015 2016 2017, so wie es sein sollte. Kann also keine Verdreifachung der Ergebnisse beobachten.
Probier mal ob diese kleinen Änderungen schon helfen.
Grüße
Daniel
Anzeige
AW: Zugriff auf Zelle, deren Wert sich ändert
28.01.2019 09:36:46
Lare
Lieber Daniel,
es tut mir leid für die späte Rückmeldung, ich war seit Mittwoch nicht mehr im Office und hatte keinen Zugriff auf die Datei.
Mit "CalcvonDB" wollte ich auf die Datenbank zugreifen und die neuen Werte direkt berechnen aber nun habe ich auch ohne "CalcvonDB" + deine Änderungen getestet und es funktioniert einwandfrei! Du bist ein Held :-)
Danke dir nochmal und viele Grüße
Lare

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige