Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
908to912
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
908to912
908to912
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Global Variable bleibt "leer"

Global Variable bleibt "leer"
20.09.2007 21:54:00
Franz
Hallo Profis,
Im Deklarationsteil steht: Global iAnzahl_DB_Records As Integer .
Auszugsweise...
Call AnzahlRecords_Datenbank(AUSWERTUNG, "DAT000", "TIME")
MsgBox (iAnzahl_DB_Records) gibt mir "0" obwohl der Wert von "288" ordnungsgemäß in der Statusleiste zu lesen ist.
Die

Sub jetzt...


Sub AnzahlRecords_Datenbank(DBFullName As String, TableName As String, FieldName As String)
Dim db As Database, rs As Recordset
Set db = OpenDatabase(DBFullName)
Set rs = db.OpenRecordset(TableName, dbOpenTable) ' all records
iAnzahl_DB_Records = rs.RecordCount
application.statusbar=iAnzahl__DB_Records
Set rs = Nothing
db.Close
Set db = Nothing
End Sub


Andere "Global" Variablen verlieren nicht Ihre Inhalte. Stehe vor einem Rätsel!
Wer kann mir helfen?
Franz D.

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

Betreff
Datum
Anwender
Anzeige
AW: Global Variable bleibt "leer"
20.09.2007 22:03:00
Renee
Hi Franz,

iAnzahl__DB_Records   ist nicht gleich    iAnzahl_DB_Records


GreetZ Renee

AW: Global Variable bleibt "leer"
20.09.2007 22:14:00
Franz
Hi Rennee,
optisch sieht es so aus, ist leider nicht die Wirklichkeit (hätte mich über den Schreibfehler schon gefreut).
Weiterer Tipp: habe es soeben mit Public ausprobiert. Auch wieder "0" und keine "288" weiter geleitet.
Kann jemanden vielleicht die Sub als Function umschreiben?
Franz D.

AW: Global Variable bleibt "leer"
20.09.2007 22:19:03
Renee
Hi Franz,
Warum sollte man Code umschreiben, der Rechtschreibfehler enthält?
Dann poste doch mal, was Du wirklich hast, aber alles 1:1
GreetZ Renee

Anzeige
AW: Global Variable bleibt "leer"
20.09.2007 22:29:58
Franz
Hi Renee,
Danke für den Vorschlag. Darf/kann leider keine Geschäftsdaten hochbeamen. Ich gebe dir die komplette Syntax des Aufrufes:
Call AnzahlRecords_Datenbank("Daten_19_09_2007.mdb", "DAT000", "TIME"), "DAT000" ist eine Access-Table, "TIME" eine Spalte aus dieser Tabelle. Die Eigenschaft "Recordcount" erkennt 288 Einträge die leider nicht in der Global (iAnzahl_DB_Records = rs.RecordCount) gespeichert bleibt.
Vielleicht hast du eine "mdb" Datei zum testen.
Tschüss!
Franz D.

AW: Global Variable bleibt "leer"
20.09.2007 23:49:41
Franz
Hallo Renee,
Habe die Sub umfunktioniert in eine Function die bekanntlich Parameter behält. Ich komme somit weiter mit meinem Projekt. Danke für deine Bemühungen und schönes Wochenende wünscht...
Franz D.

Anzeige
AW: Global Variable bleibt "leer"
21.09.2007 06:14:55
Luschi
Hallo Franz,
in der Access-Hilfe zu RecordCount steht Folgendes:
Mit der RecordCount-Eigenschaft können Sie herausfinden, auf wie viele Datensätze in einem Recordset- oder TableDef-Objekt zugegriffen wurde. Die RecordCount-Eigenschaft zeigt erst an, wie viele Datensätze in einem Recordset-Objekt vom Typ Dynaset, Vorwärts oder Snapshot enthalten sind, nachdem auf alle Datensätze zugegriffen wurde. Nachdem auf den letzten Datensatz zugegriffen wurde, zeigt die RecordCount-Eigenschaft an, wie viele ungelöschte Datensätze insgesamt im Recordset- oder TableDef-Objekt enthalten sind. Damit auf jeden Fall auf den letzten Datensatz zugegriffen wird, verwenden Sie die MoveLast-Methode für das Recordset-Objekt. Sie können auch mit der SQL-Funktion Count die ungefähre Anzahl der Datensätze bestimmen, die Ihre Abfrage zurückgeben wird.
Anmerkung: Wenn Sie mit der MoveLast-Methode ein neu geöffnetes Recordset-Objekt auffüllen, wird die Leistung beeinträchtigt. Nur wenn ein exakter RecordCount sofort beim Öffnen des Recordset-Objekts nötig ist, sollten Sie dies durchführen, andernfalls sollten Sie zuerst das Recordset-Objekt mit anderen Teilen des Codes auffüllen, bevor Sie die RecordCount-Eigenschaft aktivieren.
Soweit der Hilfetext:
Schreibe also nach dem Öffnen der Tabelle noch dem Befehl zum Wechseln auf den letzten DS:
Set rs = db.OpenRecordset(TableName, dbOpenTable)
rs.MoveLast
Erst jetzt ist die genaue Anzahl von Datensätzen selbst Excel bekannt.
Dies ist immer noch ein altes Kriegsleiden aus Zeiten von Access 2.0.
Manches ändert sich eben nie (selbst bei M$).
Gruß von Luschi
aus klein-Paris

Anzeige
AW: Global Variable nicht mehr "leer"
22.09.2007 09:18:30
Franz
Hallo Luschi,
werde mir genau dein Experten-Wissen in Access zur Brust nehmen. Herzlichen Dank für die genauen Ratschläge. Schönes Wochenende wünscht...
Franz D.

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige