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

vbe.ReplaceLine - Laufzeitfehler '91'

vbe.ReplaceLine - Laufzeitfehler '91'
15.04.2019 11:19:34
Marco
Hallo nochmal,
ich optimiere heute einige meiner Makros, stehe jetzt leider wieder vor einem Problem bei dem ich nicht weiter komme.
Hintergrund: Ich lasse bei jedem Start meiner PERSONAL.XLSB prüfen ob an dem Tag schon ein automatisches Backup einiger wichtiger Dateien durchgeführt wurde. Um dieses zu prüfen kontrolliert das Makro ob das aktuelle Tagesdatum schon im VBA hinterlegt ist.
Leider bekomme ich beim Excelstart, also beim automatischen Ausführen des Scriptes immer die Fehlermeldung:
Laufzeitfehler '91'- Objektvariable oder with- Blockvariable nicht festgelegt
Der Debugger verweist auf folgende Zeile: vbe.ReplaceLine 10, NeueZeile
Sobald ich allerdings in den Editor wechsel und dort Workbook_Open() mit F5 starte, dann funktioniert es ohne Fehlermeldung und auch das Datum wird in den Code übernommen.
Vielleicht hat von Euch jemand eine Iddee woran es liegt!?
VG
Marco
Option Explicit

Sub Workbook_Open()
'Kontrolle ob Backup bereits erfolgt ist
Dim Tag As String
Dim KontrollTag As String
Dim NeueZeile As String
Dim vbe As Object
Set vbe = Application.vbe.ActiveCodePane.CodeModule
Tag = Date
KontrollTag = "15.04.2019"
If KontrollTag  Tag Then
' Backup ausführen
Call AutoBackup
NeueZeile = "KontrollTag = " & """" & Tag & """"
vbe.ReplaceLine 10, NeueZeile
Else
' Backup wurde bereits ausgeführt
MsgBox "Es wurde heute bereits ein Backup angelegt!", vbOKOnly, "Nichts zu tun :)"
End If
End Sub

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: vbe.ReplaceLine - Laufzeitfehler '91'
15.04.2019 12:45:38
Marco
Hallo,
also um das Problem erst einmal anders zu lösen gehe ich erst einmal so vor und benenne das Tabellenblatt in das Tagesdatum um das funktioniert problemlos.
Das ist jetzt nur ein Workaround - trotzdem interessiert es mich noch wieso das Problem mit dem Laufzeitfehler beim anderen Makro auftritt.
VG
Marco
Sub Workbook_Open()
'Kontrolle ob Backup bereits erfolgt ist
Dim Tag As String
Dim KontrollTag As String
Tag = Date
KontrollTag = Worksheets(1).name
If KontrollTag  Tag Then
' Backup ausführen
Call AutoBackup
Worksheets(1).name = Tag
Else
' Backup wurde bereits ausgeführt
MsgBox "Es wurde heute bereits ein Backup angelegt!", vbOKOnly, "Nichts zu tun :)"
End If
ThisWorkbook.Save
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige