http://www.tksoft-online.de

ALLE |0-9 |A |B |C |D |E |F |G |H |I |J |K |L |M |N |O |P |Q |R |S |T |U |V |W |X |Y |Z

Themen MS-Access Codes Codeschnipsel DB Objekte

Suche nach Schlagwort : MS-Access, VBA, DAO, Objekte


Darstellen einer Progressbar in der Formular-Statuszeile PDF Drucken E-Mail
Benutzer Bewertung: / 0
SchlechtSehr gut 
 

Geschrieben von TommyK, am 16-09-2009 00:00

Views : 936    

Favoriten : Keine

Veröffentlicht in : MS-Access Codes, Codeschnipsel DB Objekte

Schlüsselworte : MS-Access, VBA, Formular, Statuszeile, Progressbar

Problemstellung:

Wie kann ich in der Statuszeile eines Formulars ein Progressbar darstellen?

Fast jeder stand schon mal vor der Situation ein Progressbar darstellen zu wollen.
Jetzt gibt es da einige Lösungen ob nun mit ActiveX-Controls oder anders.
Am einfachsten geht es mit dem SysCmd-Objekt.

Lösung:
Das SysCmd-Objekt hat 3 Methoden dafür.
acSysCmdInitMeter                zur Initialisierung der Progressbar

acSysCmdUpdateMeter        zur Aktualisierung der Progressbar

acSysCmdRemoveMeter      zum Löschen der Progressbar

1. Initialisierung der Pogressbar:

     Dim RetVal As Variant
    RetVal = SysCmd(acSysCmdInitMeter, "Statuszeilentext", die Obergrenze)

 

2. Aktualisierung der Pogressbar:

     For n = 1 To 10000000
        RetVal = SysCmd(acSysCmdUpdateMeter, n)
    Next n

 

3. Löschen der Pogressbar:

RetVal = SysCmd(acSysCmdRemoveMeter)

 

Hier ein konkretes Beispiel:

Sub Import(sFile As String)
    Dim rsIn As DAO.Recordset, rsOut As DAO.Recordset
    Dim RetVal As Variant, nCount As Long, n As Long
    Dim sInArt As String

    DoCmd.TransferSpreadsheet acLink, acSpreadsheetTypeExcel9, "Material", sFile, True
    Set rsIn = CurrentDb.OpenRecordset("Material")
    Set rsOut = CurrentDb.OpenRecordset("tblArtikel")

    '************************************************************
    'Progressbar initialisieren
    rsIn.MoveLast
    nCount = rsIn.RecordCount
    rsIn.MoveFirst
    RetVal = SysCmd(acSysCmdInitMeter, "Datenimport...", nCount)
    '************************************************************

    Do While Not rsIn.EOF
        sInArt = rsIn!Artikel
        rsOut.FindFirst "Artikel = '" & sInArt & "'"
        If rsOut.NoMatch = True Then
            rsOut.AddNew
            rsOut!Artikel = rsIn!Artikel
            rsOut.Update
        Else
            rsOut.Edit
            rsOut!Bezeichnung = rsIn!Bezeichnung
            rsOut.Update
        End If
        rsIn.MoveNext
        rsOut.MoveFirst
        '************************************************************
        'Progressbar aktualisieren
        n = n + 1
        RetVal = SysCmd(acSysCmdUpdateMeter, n)
        '************************************************************
        CurrentDb.TableDefs.Delete "Material"
    Loop

    rsIn.Close: Set rsIn = Nothing
    rsOut.Close: Set rsOut = Nothing
    '************************************************************
    'Progressbar löschen
    RetVal = SysCmd(acSysCmdRemoveMeter)
    MsgBox "Datenimport beendet!", vbInformation + vbOKOnly, "Erfolg"
    '************************************************************
End Sub

 

Ergebnis:

Image

 


Letztes Update : 06-11-2009 07:14

Favoriten Drucken Als E-mail versenden Ähnliche Artikel

Benutzerkommentare  RSS feed Kommentar
 

Durschnittliche Benutzerbewertung

   (0 Stimmen)

 

Keine Kommentare vorhanden

Füge deinen Kommentar hinzu



mXcomment 1.0.6 © 2007-2010 - visualclinic.fr
License Creative Commons - Some rights reserved
< Zurück   Weiter >

Google Site Search

Google
Web TKSoft-Online
Google PageRank modul - Camelpark SEO centrum

Login

Latest Forum Posts

Last Comments

Einlesen von Dateien in eine...
DLL Fehler?
Hallo Swear, das ist keine...
11.02.10 15:37 Mehr...
von TommyK

Einlesen von Dateien in eine...
dll Probleme
Echt gute Programmsequenz. Ich hab nur...
11.02.10 10:40 Mehr...
von Swear

Berechnung von Kalenderwochen...
Falsche KW
Hallo MAG, schreibe: Dann erhälst...
18.01.10 17:10 Mehr...
von TommyK

Berechnung von Kalenderwochen...
Funktion gibt bei mir falsche KW aus.
Hallo, super Danke für den Tipp,...
18.01.10 13:14 Mehr...
von Mag

Passwort Generator
Oh Mann...
Danke Tommy, manchmal scheint man...
08.12.09 06:25 Mehr...
von Uwe

Download Statistik

1 Kategorien:33 1 Files:186 1 Downloads:142129 1 Traffic:
JoomlaWatch Stats 1.2.8_05-dev by Matej Koval