WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Programmierung (http://www.wcm.at/forum/forumdisplay.php?f=17)
-   -   Probleme mit Recordset und datenbank erstellen (http://www.wcm.at/forum/showthread.php?t=83380)

maxmustermann 08.01.2003 00:00

Probleme mit Recordset und datenbank erstellen
 
1. problem:

ich habe einen recordset der daten aus einem excelfile enthält

der recordset enthält die felder datum, kurs, volumen

ich füge die daten des recordsets in eine tabelle hinzu..
funktioniert alles wunderbar..
bis ich auf eine stelle treffe, wo ich bei volumen nicht weiterkomme, weil er keinen wert hat..

er soll das volumen gleich einem wert in der tabelle setzen..
was bis jetzt wunderbar geklappt hat..

unterschiede die ich erkannt habe:
es ist das 1. volumen welches keine ganzzahlige zahl enthält!

wenn jedoch nur ganzzahlige typen erlaubt wären, dann wäre ja ein konflikt wegen unverträglichen typen oder er würde die kommastellen weglassen soweit ich weiss..

in meinem fall hat er einfach keine daten zu dem feld!

mein problem: sobald ich jetzt da irgendwie darauf zugreife kommt eben der error..
wenn ich das feld direkt von excel importiere bekomme ich den wert!
also hab ich mir überlegt dass ich einfach wenn so etwas auftritt, den wert direkt abfrage und zuweise!

aber wie kann ich diesen fehler erkennen ohne das die prozedur unterbrochen wird?!?!

2. Problem

ich will in einem VBA code, in access, eine andere datenbank erstellen!
ich verwende ADO..

bei DAO wüsste ich schon wie ich es mache..

Dim ws As workspace
Dim db As database

Set ws = DBEngine.Workspaces(0)
Set db = ws.createdatabase("c:\test.mdb", dbLangGeneral, dbVersion30)

db.Close


wie geht das mit ado?
hab dazu noch nichts gefunden.. wenn jemand das weiss würde es mich schneller weiterbringen


thx im voraus!

Hussl 08.01.2003 08:01

hallo,

zu Problem 1: ich denke mal, dass man den Fehler so ungefähr abfangen könnte (für Verbesserungsvorschläge bzw. Korrekturen bin ich natürlich offen)

Code:

On Error Goto Fehler
'...hier der Code mit Recordset usw.

Fehler:
If Err.Number = ### Then ' ### = Fehlercode
  '...Direkt von Excel
End If

zu Problem 2: ich habe mal so etwas in ASP geschrieben (bzw. begonnen zu schreiben) Die Sache heißt ADOX. Vielleicht gibts aber auch eine bequemere Möglichkeit, das weiß ich aber nicht.

Code:

Set cat = CreateObject("ADOX.Catalog")
cat.Create "Provider=Microsoft.Jet.OLEDB.4.0;" & _
    "Data Source=" & Pfad & DBname)
If Err.Number = 0 Then Msgbox "Datenbank erstellt"


maxmustermann 08.01.2003 10:15

cat wird dann schätz ich mal als objekt definiert oder?


vorerst mal danke ich werd das mal probiern!

ich meld mich dann nochmal wenn ichs probiert hab...

maxmustermann 08.01.2003 12:00

so thx, probleme sind gelöst!

das 1. war eigentlich kein problem..
nur ein fehler meinerseits..

hab da was übersehen.. in der excel datei is das attribut anders benannt!

deswegen hat er das nicht gefunden =)

beim 2. problem hab ich das so ähnlich wie du gelöst..

einfach

Sub CreateDatabase()

Dim cat As New ADOX.Catalog
cat.Create "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\new.mdb"

End Sub



nur muss man mal den verweis für adox finden..

da kann man verzweifeln :(

Microsoft ADO Ext. 2.5 for DDL and Security


also nochmal thx für die hilfe!


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:07 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag