Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

VBA 6.5 Countdown

Frage Entwicklung VB for Applications

Mitglied: Darth-Caedus-84

Darth-Caedus-84 (Level 1) - Jetzt verbinden

26.02.2011 um 22:54 Uhr, 6875 Aufrufe, 5 Kommentare

Problem beim Einrichten eines Countdowns mit Visual Basic 6.5

Hallo zusammen

Ich bin wahrscheinlich zu dumm, um Visual Basic 6.5 zu prgrammieren.

Ich wollte eigentlich ganz einfach einen Countdown mit einer vorgegebenen Zeit definieren und dass dieser beginnt herunter zu zählen und die verfügbare Restzeit in einem Label ausgibt. Leider hat sich hier die Logik mit VBA 6.5 geändert. Habe schon rauf und runter gegoogelt, leider ohne Erfolgt. Hier nochmals das genaue Ziel:

Countdown mit fix definierter Zeit soll beim Aktivieren eines CommandButtons beginnen und die restliche Zeit in einem Label ausgeben. Schön wäre noch, wenn es möglich wäre bei der Ausgabe Stunden, Minuten und Sekunden anzuzeigen.

Gruss
Caedus
Mitglied: bastla
27.02.2011 um 00:35 Uhr
Hallo Darth-Caedus-84!

Das könnte etwa so gehen:
01.
Zeit = TimeSerial(3, 20, 0) '200 Minuten 
02.
Ende = Now + Zeit 
03.
Pause = 1 / 87000 'etwas weniger als eine Sekunde 
04.
Do 
05.
    Label1.Caption = FormatDateTime(Ende - Now, vbLongTime) 
06.
    Application.Wait Now + Pause 
07.
Loop Until Now >= Ende
Alternativen findest Du zB hier (wobei die Variante mit "WScript.Sleep" unter VBA nicht funktioniert) ...

Grüße
bastla
Bitte warten ..
Mitglied: 76109
27.02.2011 um 11:07 Uhr
Bitte warten ..
Mitglied: Darth-Caedus-84
27.02.2011 um 13:00 Uhr
Hey bastla

Supi, thx für die schnelle Antwort, es funktiert. Jedoch nocheine kurze Anschlussfrage. Wie muss ich das Ganze ergänzen, wenn ich möchte, dass ich während dem Countdown z. Bsp. andere CommandButtons normal betätigen kann? Dies geht ja bei der obgenannten Variante leider nicht.

Gruss
Caedus
Bitte warten ..
Mitglied: bastla
27.02.2011 um 13:21 Uhr
Hallo Darth-Caedus-84!

Versuch es mit der API-Variante - dazu müsstest Du dann in der Schleife die Zeile 6 durch einen Aufruf von "Sleep" ersetzen ...

Grüße
bastla
Bitte warten ..
Mitglied: 76109
27.02.2011 um 13:24 Uhr
Hallo bastla!

Zitat von bastla:
Versuch es mit der API-Variante - dazu müsstest Du
dann in der Schleife die Zeile 6 durch einen Aufruf von "Sleep" ersetzen ...
Das hatte ich schon versucht und funktioniert leider nicht (von daher obigen Kommentar entfernt)

@Darth-Caedus-84!

Andere Möglichkeit für Dein Vorhaben wäre z.B.

UserForm:
01.
Private Sub CommandButton1_Click() 
02.
    Zeit = Now + TimeSerial(0, 1, 0) 'Std, Min, Sek 
03.
    Call CountdownRefresh 
04.
End Sub
Modul:
01.
Public Zeit As Date 
02.
 
03.
Sub ShowUserForm() 
04.
    UserForm1.Show 
05.
End Sub 
06.
 
07.
Sub CountdownRefresh() 
08.
    If Now > Zeit Then 
09.
        'Mach was oder auch nicht! 
10.
    Else 
11.
        UserForm1.Label1.Caption = FormatDateTime(Zeit - Now, vbLongTime) 
12.
        Application.OnTime Time + 0.0000114, "CountdownRefresh" 
13.
    End If 
14.
End Sub
Wobei das Contdown-Label praktisch im Hintergrund aktualisiert wird.

Gruß Dieter
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
VB for Applications
gelöst VBA-Makro verschwindet nach Speichern (5)

Frage von lupi1989 zum Thema VB for Applications ...

VB for Applications
gelöst Excel VBA Eine oder mehrere Zellen Verschieben (2)

Frage von batchnewbie zum Thema VB for Applications ...

VB for Applications
gelöst Mehrere Charts per VBA erstellen lassen, Titel wird nicht angezeigt

Frage von Aximand zum Thema VB for Applications ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (25)

Frage von M.Marz zum Thema Windows Server ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...

Erkennung und -Abwehr
Spam mit eigener Domain (12)

Frage von NoobOne zum Thema Erkennung und -Abwehr ...