vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Blitzschnelles Erstellen von grafischen Diagrammen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fortgeschrittene Programmierung
tbl.Recordcount = 1 ??????????? 
Autor: Blacky
Datum: 13.04.02 21:35

Hallo allerseits,

Ich habe eine Access 2000 DB gemacht in Accsess selber und ein paar Abfragen.
Mit meinem Programm greife ich auf die Abfragen mittels DAO zu.
Um nun einer Progressbar die .Max-Eigenschaft zuzuweisen, hole ich mir den Wert mittels Prgsbar.Max = Tbl_Item.Recordcount
Komischerweise bekomme ich aber immer nur eine 1 geliefert ! Ich weiss genau es müssten aber mehr Datensätze enthalten sein. Ich möchte einfach die Datensätze in eine Exceltabelle exportieren und den Fortschritt anzeigen lassen. Hier mal ein Stück Code :

Public Function ExportToExcel(ByVal Spalten As Variant, ByVal Neu As Boolean, ByVal Spa As Boolean, _
ByVal BlattNr As Integer, ByVal Datei As String, ByVal Numm As String, _
ByVal SQL As String, Icount As Integer) As Boolean

Dim tbl_Item As Recordset
Dim Excel As Excel.Application
Dim Sv As Integer

ExportToExcel = True
Expstat_frm.Show
With Expstat_frm
.Prgsbar.Min = 0
.Prgsbar.Value = 0

.Status_lbl.Caption = " ...öffne Excel"
Set Excel = CreateObject("Excel.application")
If Excel Is Nothing Then
ExportToExcel = False
.Status_lbl.Caption = " ... fehlgeschlagen."
Unload Expstat_frm
Exit Function
End If
If SQL = "" Then ExportToExcel = False: Exit Function
Set tbl_Item = DB.OpenRecordset(SQL)
.Prgsbar.Max = tbl_Item.Recordcount <<------------ Da isset

If Neu = False Then
.Status_lbl.Caption = " ...öffne Tabelle."
Excel.Workbooks.Open Datei
G = Excel.Sheets.Count
If G < BlattNr Then
.Status_lbl.Caption = " ...zu wenig Tabellenblätter."
ExportToExcel = False
Set tbl_Item = Nothing
Excel.ActiveWorkbook.Saved = True
Excel.Quit
Set Excel = Nothing
Set tbl_Item = Nothing
Unload Expstat_frm
Exit Function
End If
Excel.Worksheets(BlattNr).Activate

Else
.Status_lbl.Caption = " ...erstelle Tabelle."
Excel.Workbooks.Add
End If
tbl_Item.MoveFirst
.Prgsbar.Refresh
Sv = 0
If Spa = True Then
For T = 0 To UBound(Spalten)
Excel.Cells(1, T + 1) = Spalten(T)
Next T
T1 = 1
Else
T1 = 0
End If
X = 0
Do While tbl_Item.EOF = False
T1 = T1 + 1
Col = 0
For T = 0 To UBound(Spalten)
Col = Col + 1
If Spalten(T) = "Nr." Then
X = X + 1
Excel.Cells(T1, 1) = X
Else
If Not IsNull(tbl_Item(Spalten(T))) Then
If tbl_Item(Spalten(T)) = "Wahr" Then
Excel.Cells(T1, Col) = "Ja"
Else
Excel.Cells(T1, Col) = "Nein"
End If
If tbl_Item(Spalten(T)) <> "Wahr" And tbl_Item(Spalten(T)) <> "Falsch" Then
Excel.Cells(T1, Col) = tbl_Item(Spalten(T))
End If
End If
End If
Next T
tbl_Item.MoveNext
Sv = Sv + 1: .Prgsbar.Value = Sv: .Prgsbar.Refresh
.Status_lbl.Caption = " ...exportiere Datensatz Nr." + Str$(Sv)
Loop
If Neu = False Then
Excel.ActiveWorkbook.Save
Else
Excel.ActiveWorkbook.SaveAs (Datei)
End If
Excel.ActiveWorkbook.Saved = True
Excel.Quit
End With
Set Excel = Nothing
Set tbl_Item = Nothing
Unload Expstat_frm
End Function


Der Parameter SQL sieht so aus: SELECT * FROM MasterTabelle
wobei Mastertabelle eine Abfrage in der Datenbank ist.

Danke schon mal im vorraus
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
tbl.Recordcount = 1 ???????????56Blacky13.04.02 21:35
Re: tbl.Recordcount = 1 ???????????269unbekannt13.04.02 22:05
Re: tbl.Recordcount = 1 ???????????32Blacky13.04.02 22:39
Re: tbl.Recordcount = 1 ???????????30Blacky14.04.02 09:14

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel