Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1880to1884
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
VBA, Wenn Dann Prüfung
03.05.2022 10:18:59
Mani
Hallo!
Ich möchte einen bereits funktionierenden VBA Code mit einer zusätzlichen Prüfung erweitern.
Mein Code ist einem CommandButton zugewiesen, der
1. ein Passwort prüft und wenn das Passwort stimmig ist,
2. das tagesaktuelle Datum (Format MMDD) mit einem Datum im aktiven Arbeitsblatt prüft. Wenn hier die Kriterien erfüllt sind, dann rufe ein bestimmtes Modul auf.
Bis hier funktioniert alles.
Und hier möchte ich dann noch eine Prüfung bzw. Zwischenschritt einfügen.
Und zwar, wenn bereits ein bestimmtes Blatt mit dem Namen "2023" vorhanden ist, dann mache nichts, ansonsten rufe dieses bestimmte Modul auf.
Hier mein funktionierender Code:

Sub CommandButton1_Click()
If Application.InputBox("Passwort eingeben", "PasswortBox", , , , , 2)  "xyz" Then
MsgBox "Passwort falsch"
Exit Sub
End If
If ActiveWorkbook.Sheets("Deckblatt").Range("J1").value > Format(Date, "MMDD") Then
MsgBox "Du musst noch warten"
Exit Sub
End If
Call Code_neuesKalenderjahr_Endfassung
End Sub
Hier mein Versuch, zu prüfen ob das Blatt "2023" bereits vorhanden ist, der Code funktioniert auch.....aber ich bekomme diese Prüfungen nicht im Gesamten zusammen.
Dim wsAct As Worksheet
Set wsAct = Sheets("2023")
Set wsAct = Sheets("AA_JJJJ")
wsAct.Copy After:=Sheets(Sheets.Count)
Err.Clear
On Error Resume Next
ActiveSheet.Name = Range("h2")
If Err 0 Then
MsgBox "Kalenderblatt bereits vorhanden"
Application.DisplayAlerts = False
Worksheets(Worksheets.Count).Delete
Application.DisplayAlerts = True
End If
On Error GoTo 0
Set wsAct = Nothing
Vielen Dank für eure Hilfe.
Gruß, Mani

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA, Wenn Dann Prüfung
03.05.2022 10:51:52
yummi
Hallo Mani,
frag einfach ob das Tabellenbaltt schon existiert ab

Function WorksheetExists(ByVal WorksheetName As String) As Boolean
Dim Sht As Worksheet
For Each Sht In ThisWorkbook.Worksheets
If Application.Proper(Sht.Name) = Application.Proper(WorksheetName) Then
WorksheetExists = True
Exit Function
End If
Next Sht
WorksheetExists = False
End Function
diesen Aufruf an der Stelle in deinem Code wo gewünscht:

if WorkSheetExists("Dein Tabellenblatt Name") = false then
dein Modul
end if
Hoffe, dasss es so gemeint war
Gruß yummi
Anzeige
AW: VBA, Wenn Dann Prüfung
03.05.2022 12:19:15
Mani
Herzlichen Dank für deine Unterstützung, habe diesbezüglich einen kurzen und knackigen Code erhalten, der funktioniert.
Gruß, Mani
AW: VBA, Wenn Dann Prüfung
03.05.2022 10:53:03
Berny
Hallo Mani,
ich mach das so:
Public Offen As Boolean
For Each w In Windows 'Prüfen ob Datei bereits geöffnet ist
If w.Caption = Dateiname & ".xlsx" Then Offen = True
Next w
If Offen = False Then
....
M.f.G.
Berny
AW: VBA, Wenn Dann Prüfung
03.05.2022 12:21:00
Mani
Herzlichen Dank für deine Unterstützung, habe diesbezüglich schon Hilfe bekommen.
Gruß, Mani
AW: VBA, Wenn Dann Prüfung
03.05.2022 11:08:32
Charly
Hi
Hab ich mal kurz gegoogelt (von harry ein wenig abgewandelt).

If IsError(Evaluate("2023!A1")) Then ... hier dein Modul (Was immer das sein mag)
Die rictige Datei ist aber die aktive?
Gruß Charly
Anzeige
AW: VBA, Wenn Dann Prüfung
03.05.2022 11:31:45
Mani
Kurz und knackig und er funktioniert tadellos.
Vielen Dank!!
Gruß, Mani
Gerne owT
03.05.2022 15:12:41
Charly

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige