Recorderfragen beantworten

Hallo liebe Excelgemeinde,
da habe ich wieder mal eine Frage:
Ich habe ein Makro per Recorder ersetellt, in denen an Bestimmten Punkten Fragen wie Aktualiesieren, Blattschutz Passwort eingeben,Blätter löschen, usw. erforderlich sind. Kann man diese Fragen im Makro irgendwie,schon „beantworten“?
Für schnelle Hife wäre ich Euch sehr Dankbar.

Hallo,

Ich habe ein Makro per Recorder ersetellt, in denen an
Bestimmten Punkten Fragen wie Aktualiesieren, Blattschutz
Passwort eingeben,Blätter löschen, usw. erforderlich sind.
Kann man diese Fragen im Makro irgendwie,schon „beantworten“?

Deine Fragestellung ist leider sehr unpräzise, deshalb kann ich nur vermuten was du wissen willst.

Bei vielen Aktionen fragt Excel noch einmal nach, ob man wirklich das machen will was man gerade angestoßen hat. Wenn du Blätter löschen willst fragt Dich Excel z.B. noch einmal und weist Dich darauf hin, dass dies nicht mehr rückgängig zu machen ist.

Derartige Fragen von Excel kann man pauschal „beantworten“, indem man die Fehlermeldungen ganz einfach ausschaltet. Füge in den Anfang des VBA-Code Deines aufgezeichneten Makros einfach „Application.DisplayAlerts = False“ ein. Wenn Dein Makro z.B. Makro1 heißt, dann füge diesen Befehl in der Zeile unter dem „Sub Makro1()“ ein.
Achtung: Excel fragt dann während des Makros nicht mehr nach und macht einfach das, was im Code steht.

Am besten aktivierst du kurz vor Ende des Makros die Fehlermeldungen wieder, indem du in der Zeile vor dem „End Sub“ einfach „Application.DisplayAlerts = True“ einfügst.

Mit dem Blattschutz-Kennwort weiss ich nicht, was du wissen willst. Normalerweise sollte Excel, beim Aufzeichnen eines Makros, das eingegebene Passwort im VBA-Code sogar im Klartext hinterlegen. Es sollten dabei eigentlich keine Probleme auftauchen.

Viel Erfolg!

MfG
Stephan

Danke stephan schon mal für die Hilfe.

Es geht, bis zu der Passwortabfrage:
Sub Blattschutz()
Dim Eing As Variant
Eing = InputBox(„Löschwort eingeben:“)
If Eing „4711“ Then Exit Sub

Dim ws As Worksheet
Dim PW As String
PW = fncPassword(„Passwort eingeben“, „Passwortabfrage“)
For Each ws In ActiveWorkbook.Worksheets
If ws.ProtectContents = True Then
Rem ws.Protect Password:=PW
ws.Unprotect Password:=PW
Else
ws.Protect Password:=PW

End If
Next
End Sub

Hier das Makroteil.
Vieleicht findest du ja auch hier eine Lösung:
Der Tipp war schon richtig, jetzt brauche ich nur noch das Passwort eingeben und mein Makro würde "durchlaufen

OT Nö, so nicht
Hallo Küchenjunge,

ich habe schon sehr oft versucht dir zu helfen, gelegentlich klappte es ja *gg*
Garantiert habe ich da mehrmals auf den pre-Tag hingewiesen.

Wenn du das nicht umsetzt so ist das natürlich deine Sache.
Meine Sache ist deinen Code nicht zu lesen wenn du den pre-Tag nicht einsetzt.

FAQ:3090

Gruß
Reinhard

??? pre tag???
Lieber Reinhard,
leider habe ich dich wieder mal entäuscht!
Aber was ist jetzt wieder pre Tag?
Nennt man das eingerückte schreiben von Code?
wenn ja, entschulduge bitte, aber ich habe diesen Code so in meinem Makro. Wenn nicht, so schreibe, was du damit meinst.

jetzt den Code so???
jetzt den Code so

Sub Blattschutz()
Dim Eing As Variant
Eing = InputBox(„Löschwort eingeben:“)
If Eing „4711“ Then Exit Sub

Dim ws As Worksheet
Dim PW As String
PW = fncPassword(„Passwort eingeben“, „Passwortabfrage“)
For Each ws In ActiveWorkbook.Worksheets
If ws.ProtectContents = True Then
Rem ws.Protect Password:=PW
ws.Unprotect Password:=PW
Else
ws.Protect Password:=PW

End If
Next
End Sub

Nö, so:

jetzt den Code so

Sub Blattschutz()
Dim Eing As Variant
Eing = InputBox(„Löschwort eingeben:“)
If Eing „4711“ Then Exit Sub

Dim ws As Worksheet
Dim PW As String
PW = fncPassword(„Passwort eingeben“, „Passwortabfrage“)
For Each ws In ActiveWorkbook.Worksheets
If ws.ProtectContents = True Then
Rem ws.Protect Password:=PW
ws.Unprotect Password:=PW
Else
ws.Protect Password:=PW

End If
Next
End Sub

Hallo KJ,

Aber was ist jetzt wieder pre Tag?

FAQ:30 FAQ:3090

Nennt man das eingerückte schreiben von Code?

Nein, der Pre-tag erhält die Einrückungen im von dir gezeigten Code=bessere Lesbarkeit.

wenn ja, entschulduge bitte, aber ich habe diesen Code so in
meinem Makro.

Nein, so wie du ihn hier präsentierst hast du ihn nicht so im Makro.
Dort ist er eingerückt, hier nicht.

Wenn nicht, so schreibe, was du damit meinst.

FAQ:3090

Gruß
Reinhard

Ich danke dir für die Hilfe, aber wie hast du das gemacht? Ich hatte es wie im Hinweis von Reinhard versucht. Leider nicht mit den richtigen erfolg. Danke noch mal.

Moin,

beim „Antworten & Zitieren“ kannst Du das sehen. So startet man den Block:

 und so beendet man ihn:

Gruß Ralf

Danke, jetzt habe ich es geschnallt.!!!

ABER, mein Problem mit dem Makro und dem Stopp beim Passwort ist noch nicht gelöst.
Weiß da keiner (Hallo Reinhard) rat???

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hallo KJ,

Danke, jetzt habe ich es geschnallt.!!!

möglicherweise das mit dem pre-Tag. Ich weiß aber nicht ob du verinnerlicht hast warum ich auf dem pre-Tag so rumreite/ritt.

Du stellst eine Anfrage, warum zeigst du da eigentlich nicht gleich den relevanten Code?
Den Code hast du bei dir auf dem PC für dich besser lesbar gemacht durch Einrückungen.
Hier zeigst du ihn ohne diese Einrückungen.

So, 10 potentielle Helfer sin dann quasi gezwungen deinen unformatierten Code in eine Modul zu kopieren und die Einrückungen selbst vorzunehmen, Leerzeilen rauszuwerfen u.ä.
Je nach Wissen der Helfer und einigen anderen Dingen kann das zwischen 3 Sekunden und 3 Minuten liegen.
Nehmen wir mal 2 min im Schnitt. Bei 10 Helfern also 20 min.

20 min für nix was mit dem Problem direkt zu tun hat, einfach so vernichtet an Helferzeit.
Jetzt fragst ja nicht nur du hier an, auch andere, wenn das noch 10mal so läuft sind schon über 3 Stunden helferzeit pro Tag absolut sinnlos vergeudet.

Dies ist völlig einfach mit dem pre-tag zu vermeiden. Okay, kennt nicht jeder, auch sehr okay, dafür gibt es ja FAQ:3090

Wenn nun mein Hinweis auf die FAQ nicht reicht, dann weiß weder ich, ich unterstelle mal Ralf er auch nicht, Jessica die die FAQ betreut auch nicht an welchen Punkten du das nicht durchblickst.

Das ist völlig normal. Sobald man etwas kennt ist man irgendwie unbrauchbar dafür geworden einen Hilfetext zu entwickeln der etwas beschreibt und den jeder Nochnichtkundige auch versteht.

Siehe Bedienungsanleitungen von technischen Geräten u.v.m. wenn die die Techniker schreiben ohne Rücksprache mit anderen Laien kannnst die Anleitungen in die Tonne schmeißen.

Insofern würde ich es echt sehr begrüßen, du gehst in die FAQ, dort kannst du Jessica anmailen, und schildere ihr möglichst so exakt wie möglich woodran es genau lag daß du trotz der FAQ nicht fähig warst den pre-Tag einzusetzen.

ABER, mein Problem mit dem Makro und dem Stopp beim Passwort
ist noch nicht gelöst.

Sorry, hatte bislang noch keine große Zeit mir deinen Code anzuschauen, ich war damit beschäftigt auf meine bekannt sehr nette Art jemanden darauf hinzuschubsen daß er endlich mal den pre-Tag benutzt.
Immerhin bin ich da schon soweit daß dieser Jemand sagte er hätte das geschnallt. Sobald ich dafür hier den Beweis sehe habe ich wieder Zeit mir deinen Code anzuschauen:smile:

Gruß
Reinhard