Timer in Makro um Bildaufbau zu gewährleisten - Druckversion +- Office-Fragen.de (https://office-fragen.de) +-- Forum: Microsoft Office (https://office-fragen.de/forum-1.html) +--- Forum: Excel (https://office-fragen.de/forum-2.html) +--- Thema: Timer in Makro um Bildaufbau zu gewährleisten (/thread-29001.html) |
Timer in Makro um Bildaufbau zu gewährleisten - isdaroberto - 29.11.2023 Hallo zusammen, ich habe das Thema mit der Schleife letzten klären können. Jetzt habe ich ein weiteres Problem. Meine Schliefe soll wie folgt funktionieren: - Bei jeder Schleife wird ein PDF generiert und an einem vordefinierte Ort abgelegt (das funktioniert) - Jedes PDF hat in einer Zelle einen Link um einen anderen Zellenwert als QR Code anzuzeigen (das funktioniert, wenn ich die Schleife NICHT laufen lasse) hier der Code, welcher in der Zelle zum QR Code Aufbau steht: =BILD("https://quickchart.io/qr?text="URLCODIEREN(B26)) - da ich mir dachte, dass das abspeichern als PDF schneller sein könnte, als der QR code zu erstellen, habe ich nen timer eingebaut. Das bringt mir auch nicht die Lösung; selbst nicht, wenn ich 10 Sekunden Timer einbaue. Und hier mein Quellcode: Sub WR code list() Application.ScreenUpdating = False Dim PE As Integer Dim PS As Integer PE = Range("O33") + 13 For PS = 14 To PE Cells(PS, 17).Copy Cells(10, 16).PasteSpecial xlPasteValues Application.Wait (Now + TimeValue("0:00:10")) ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _ Filename:= _ Range("P6") & "\" & Range("P10") & "_" & Range("P7") & "_" & Range("P8") & ".pdf", _ Quality:=xlQualityStandard, _ IncludeDocProperties:=True, _ IgnorePrintAreas:=False, _ OpenAfterPublish:=False Next Application.ScreenUpdating = False End Sub RE: Timer in Makro um Bildaufbau zu gewährleisten - HKindler - 19.12.2023 Hi, mein Excel kennt noch kein BILD(), daher kann ich es nicht testen. Aber ich vermute mal stark, dass dein Application.ScreenUpdating = False dafür sorgt, dass dein Bild NICHT aktualisiert wird. Falls ein Entfernen dieses Befehls noch nicht hilft, würde ich statt mit Application.Wait (was nichts anderes macht als Excel komplett anzuhalten) eher mit DoEvents experimentieren. RE: Timer in Makro um Bildaufbau zu gewährleisten - isdaroberto - 19.12.2023 danke Helmut, habe ich direkt ausprobiert. - Wenn ich Screenupdate und Wait rausnehme, funktioniert es nicht zu 100%; aber schon mal ein Schritt weiter - Wenn ich NUR Wait rausnehme, funktioniert es garnicht - Wenn ich NUR Screenupdate rausnehme funktioniert es wieder garnicht mit der DoEvent Funktion muss ich mal rumspielen; diese kenne ich noch nicht. Ich halte Dich uf dem laufenden RE: Timer in Makro um Bildaufbau zu gewährleisten - isdaroberto - 19.12.2023 Also... ich bin jetzt da nur zufällig draufgekommen... wenn ich das Makro ein 2. Mal habe durchlaufen lassen, hat es funktioniert... Jetzt habe ich die Schliefe einfach 2 Mal reingemacht und es funktioniert Warum... ist mir schleierhaft, aber das Ziel ist erreicht. Wenn hier jemand noch ein Kommentar hat, freue ich mich, dann lerne ich was dazu. danke Sub WR code list() Dim PE As Integer Dim PS As Integer PE = Range("O33") + 13 For PS = 14 To PE Cells(PS, 17).Copy Cells(10, 16).PasteSpecial xlPasteValues ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _ Filename:= _ Range("P6") & "\" & Range("P10") & "_" & Range("P7") & "_" & Range("P8") & ".pdf", _ Quality:=xlQualityStandard, _ IncludeDocProperties:=True, _ IgnorePrintAreas:=False, _ OpenAfterPublish:=False Next PE = Range("O33") + 13 For PS = 14 To PE Cells(PS, 17).Copy Cells(10, 16).PasteSpecial xlPasteValues ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _ Filename:= _ Range("P6") & "\" & Range("P10") & "_" & Range("P7") & "_" & Range("P8") & ".pdf", _ Quality:=xlQualityStandard, _ IncludeDocProperties:=True, _ IgnorePrintAreas:=False, _ OpenAfterPublish:=False Next End Sub |