Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
964to968
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
964to968
964to968
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

VBA-Code Ablauf überspringen

VBA-Code Ablauf überspringen
03.04.2008 15:18:58
Toxma
Hallo,
kann jemand helfen?
Folgendes Problem:
Im aufgeführten Code sind mehrere select Case Anweisungen, hab hier nur eine rausgenommen. Frage: Kann man die Abhandlung der einzelnen Code-Ausführung überspringen. Beim ersten öffnen wird ein Datum in Tabelle 1 in Zelle C1 eingetragen. Nach Ablauf von 2 Tagen wird die Datei automatisch gelöscht. Nun soll aber, wenn wie gesagt in Zelle A5 etwas steht, dies nicht passieren, sondern dieser Abschnitt übersprungen werden.
Dachte ungefähr so, wenn in Tabelle 1 in der Zelle A5 ein Text oder eine Zahl eingetragen wurde, soll der Code-Bereich in dem die Zeitbeschränkung vorgegeben ist übersprungen werden alles andere danach ganz normal weiter Ablaufen (Einblenden der Tabellen). Hoffe habe es etwas verständlich erklärt. Hier der Code-Ausschnitt:
Select Case i
Case 1 'User A
If Sheets("Passwort").Range("D1").Value = " " Then
seriennumerEinlesen
ElseIf Sheets("Password").Range("D1").Value <> fs.drives("C").serialnumber Then
'MsgBox "Hallo"
Else: Sheets("Passwort").Range("D1").Value = fs.drives("C").serialnumber
'MsgBox "Berechtigt."
End If
'Usererkennung
Sheets("Passwort").Range("B1") = "A"
'Zeitbeschränkung---------------------------------------------------
Select Case ThisWorkbook.Sheets("Passwort").Range("C1")
Case ""
ThisWorkbook.Sheets("Passwort").Range("C1") = Date
Case Is < DateAdd("d", -2, Date)
' MsgBox "Sie sind nicht berechtigt diese Datei zu öffnen" _
' & vbCr & "bitte wenden Sie sich an den Programmersteller!"
' ActiveWorkbook.ChangeFileAccess xlReadOnly
' Kill ActiveWorkbook.FullName
' ThisWorkbook.Close False
' Exit Sub
Case Else
tage = 3 - (Date - ThisWorkbook.Sheets("Passwort").Range("C1"))
' MsgBox "Nutzergruppe 'A' erkannt, noch " & CStr(tage) & " Tage bis Ablauf der Nutzungsdauer für A"
'-------------------------------------------------------------------------
End Select
'Tabellen einblenden
Application.ActiveWorkbook.Sheets("Tabelle1").Visible = True
Application.ActiveWorkbook.Sheets("Tabelle2").Visible = True
Application.ActiveWorkbook.Sheets("Passwort").Visible = True
Application.ActiveWorkbook.Sheets("Tabelle3").Visible = True
Application.ActiveWorkbook.Sheets("Tabelle4").Visible = False
case 2
case 3
usw...... usw..
case 10
end select
Vielen Dank

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA-Code Ablauf überspringen
03.04.2008 16:04:00
Andi
Hi,
anstatt den Code unter bestimmten Bedingungen zu überspringen, kannst Du ihn doch ganz einfach nur unter den gegenteiligen Bedingungen ausführen, nach folgendem Muster:
if [Deine Bedingung zum Überspringen] = False then
[Hier der Code der ggf übersprungen werden soll]
end if
Schönen Gruß,
Andi

AW: VBA-Code Ablauf überspringen
03.04.2008 17:18:00
Toxma
Hallo Andi,
Danke für den Hinweis. Ich weiss nicht, ob das so einfach geht. Hab Dir mal eine Worddatei mit dem komletten Code angehangen. Die Excel-Datei ist leider fast 4 MB, geht also nicht zum hochladen.
Kannst Du mir an meinem Beipsiel-Code sagen oder zeigen, wo man da die gegenteilige Bedingung einbauen kann. So ganz versteh ich das noch nicht.
Danke
gr. T.

Anzeige
AW: VBA-Code Ablauf überspringen
03.04.2008 17:24:00
Andi
Hi,
Datei war keine angehängt, bzw Du hast vergessen, den Link in Dein posting zu kopieren.
Das Prinzip ist ganz einfach.
Du wolltest es so machen:
Überspringe das folgende wenn Bedingung erfüllt
[Hier steht das was übersprungen werden soll]
Ende des zu überspringenden Teils
Alternativ schlage ich vor:
Führe das folgende nur aus, wenn gegenteilige Bedingung erfüllt (If ... then)
[Hier steht das, was übersprungen werden soll]
Ende des zu überspringen Teils (End if)
Wo das im Code nun genau hin muss, weißt Du vermutlich besser als ich...
Schönen Gruß,
Andi

Anzeige
AW: VBA-Code Ablauf überspringen
04.04.2008 10:46:00
Andi
Hi,
ich hab jetzt keine Zeit, 12 A4-Seiten Code durchzugehen; das Prinzip ist wie gesagt denkbar einfach.
Du möchtest, dass etwas übersprungen wird, wenn in A5 etwas steht. Anders ausgedrückt, etwas soll nur dann ausgeführt werden, wenn in A5 nichts steht, sprich eine simple If-Abfrage.
Sicherheitshalber solltest Du noch mit angeben, auf welches Tabellenblatt sich das ganze bezieht; hier ein Beispiel für Tabelle1, das Du analog für jeden Block, der übersprungen werden soll, übernehmen kannst:
If Sheets("Tabelle1").Range("A5").Value = "" Then
[hier steht der Teil, der ggf übersprungen werden soll]
End If
Schönen Gruß,
Andi

Anzeige
AW: VBA-Code Ablauf überspringen
04.04.2008 14:53:49
Toxma
Hallo Andi,
danke für die Mühe, werd's so versuchen. Ansonsten melde ich mich im Forum noch einmal.
Schönes WE für Dich.
Gr. T.

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige