Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Abfrage ob Workbook offen sonst Workbooks.Add bei Sub Auto_Open





Frage

Hallo Zusammen im Zusammenhang mit einem anderen thread [url]https://supportnet.de/threads/1172018[/url] benötige ich Hilfe bei einem code. [code]´ AlternativeBewegungstastenkiller Makro Public Sub Auto_Open() ´nächste Zeile nur nötig wenn bei öffnen von Excel keine ´Arbeitsmappe vorhanden Workbooks.Add With Application .TransitionNavigKeys = False .DefaultSaveFormat = xlNormal End With End Sub [/code] Wie muss ich den code abändern, damit abgefragt wird, ob ein workbook offen ist und nur wenn nicht, dann [code]Workbooks.Add[/code] Geht das überhaupt, wenn es eine Auto_open Routine ist? Danke schon mal für Eure Mühe und Zeit Eleve

Antwort 1 von Eleve

Hallo

hat keiner eine Idee? Nochmal die Bitte - Hilfe!

Könnt ihr mir vielleicht bei dem Teilproblem helfen?

Wie muss ich den code abändern, damit abgefragt wird, ob ein workbook offen ist und nur wenn nicht, dann
Workbooks.Add ausführen?

vielen Dank schon mal

Eleve

Antwort 2 von coros

Hi Eleve,

nachfolgende Anweisung erstellt nur eine neue Datei, wenn nur eine, und zwar die, aus dem das Makro gestartet wurde, offen ist. Wenn mehr als eine geöffnet ist, geschieht nichts.

If Workbooks.Count <= 1 Then
Workbooks.Add
End If


Ich hoffe, das war´s, wass Du wissen wolltest.

MfG,
coros
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Antwort 3 von Eleve

Hallo Coros

vielen Dank erst mal für die Antwort. Im Prinzip ist es das was ich gesucht habe. Leider funktioniert mein code nicht so wie ich es möchte.

Public Sub Auto_Open()
Dim wbnr As Integer
With Application
	wbnr = Workbooks.Count
	if  Workbooks.Count <= 1 Then GoTo Makebook Else GoTo setkey
Makebook:
Workbooks.Add
GoTo setkey
setkey:
.TransitionNavigKeys = False
.Workbooks.DefaultSaveFormat = xlNormal
End With
End Sub


Da ich ziemlicher Anfänger bin bitte ich die Fehler zu entschuldigen.
Ich will erreichen, dass nach öffnen von Excel automatisch geprüft wird ob ein ein Arbeitsblatt da ist, wenn nicht soll eins eingefügt werden wenn schon weiter...
Anschließen sollen die alternativen Bewegungstasten per code ausgeschaltet werden.

Bitte nochmals um Hilfe bei dem Code

vielen Dank und viele Grüeß

Eleve

Antwort 4 von Eleve

Hallo Coros


ich habe das Problem identifiziert, aber nicht gelöst.

wenn ich in einer Arbeitsmappe ohne Sheets den Befehl
Workbooks.Count eingebe erhalte ich den Wert 7 zurück.

Ich habe einige Workbooks im Hintergrund laufen, da dort Makros eingebaut sind, welche ich immer brauche.

Deshalb funktioniert mein Ansatz von oben nicht.

Trotzdem vielen Dank für Deine Hilfe

viele Grüße

Eleve

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: