# aus VB6 in Excel schreiben



## Chris1 (28 Oktober 2008)

Hallo Leute
Ich habe ein Problem mit der Formatierung in Excel
ich schreibe mit VB6 (integer) in eine Exceltabelle Zellenformat (Zahl)
Mein Code:
Set ExcelDB(1) = Workspaces(0).OpenDatabase(ziel$, False, False, "EXCEL 5.0;")
  ' Tabelle "Werte" öffnen
    Set ExcelRS = ExcelDB(1).OpenRecordset("Werte$" _
                                    , dbOpenTable)
'Neuer Datensatz
    ExcelRS.AddNew
'Uhrzeit
    ExcelRS.Fields(0) = Format(Date, "dd/mm/yy") + " / " + Format(Time, "hh:mm:ss")
'Sollwert 1
    ExcelRS.Fields(1).value = Sollwert_Pr(1)
'Istwert 1
    ExcelRS.Fields(2).value = Istwert_Pr(1)
 'Sollert 2
    ExcelRS.Fields(3).value = Sollwert_Pr(2)
 'Istwert 2
    ExcelRS.Fields(4).value = Istwert_Pr(2)
 'Sollwert 3
    ExcelRS.Fields(5).value = Sollwert_Pr(3)
 'Istwert 3
    ExcelRS.Fields(6).value = Istwert_Pr(3)
 'Istwert 4   Bandgeschwindigkeit oben
    ExcelRS.Fields(7).value = Istwert_Pr(4)
 'Istwert 5   Bandgeschwindigkeit unten
    ExcelRS.Fields(8).value = Istwert_Pr(5)
 'Sollwert 6
  '  ExcelRS.Fields(9) = Sollwert_Pr(6)
 'Istwert 6
   ' ExcelRS.Fields(10) = Sollwert_Pr(6)

'festschreiben
    ExcelRS.Update
    speicherzeit(2) = speicherzeit(2) + 1
'Exceltabelle schliessen
    ExcelRS.Close
    ExcelDB(1).Close

Wenn ich nun die Exceltabelle öffne ist der Zelleninhalt nicht eine Zahl 
(dadurch kann ich keine Kurven erstellen)
weiss jemand eine abhilfe?
Gruss Chris


----------



## jupp (28 Oktober 2008)

Gugst Du:

http://www.vb-fun.de/vb/tipps/tip0051.shtml

Bist Du sicher, daß Du mit Excel arbeiteset??

OpenRecordset, OpenDatabase ... das klingt eher nach Datenbank!

Edit: Mit Excel 5.0???? lese ich gerade?? Dann weiß ich nicht, ob der Link Dir weiterhilft!


----------



## Chris1 (28 Oktober 2008)

Hallo Leute

@jupp 
Bist Du sicher, daß Du mit Excel arbeiteset??

Ja ich bin sicher auch xp und mein VB-Programm sind sicher
die Daten stehen auch in der Tabelle leider nicht als Zahl
und jedesmal 4000 Zeilen anwählen und die Inhalte in Zahl umwandel 
ist nicht ideal

gruss Chris


----------



## Guido (29 Oktober 2008)

Hallo Chris,

Aus deinem Beispiel geht leider nicht hervor wie Sollwert & Istwert deklariert sind.
Bei fehlender Variabeln-Deklaration, nimmt VB6 automatisch *Variant* als Format
und die Zahlen-Werte werden eventuell als *String* angesehen

versuch mal folgendes :

```
ExcelRS.Fields(1).Value =[B] [COLOR=navy]CInt([/COLOR][/B]Sollwert_Pr(1)[B][COLOR=navy])[/COLOR][/B]
```
 
Dadurch wird der Wert erst ins *Interger* Format konvertiert.

Gruss
Guido


----------

