Newsgroup: it.comp.lang.visual-basic
Titolo: creare dbf5

help!!!!!!!!!!!!!!!!!!!!!!
devo creare un dbf 5 come file di output per un programma di 
calcolo ci ho provato in tutti i modi ma non ci riesco!
qualcuno può aitartmi
ho problemi proprio nella creazione del file e poi dei campi 
la scrittura dei campi riesco a farla
grazie sin da ora
-- 
Inviato da Virgilio 
http://newsgroup.virgilio.it
Filtra gli antipatici, segnala le risposte, segue i thread, e tutto da web

 grazie sin da ora
non c'e' di che... fossi stata piu' precisa, invece di risponderti
facendoti altre domande forse...
--
ciao, hal
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 ha scritto nel
messaggio
news:11094211.1108636603524.JavaMail.newsgroup@sc-ng-1
http://www.dbforums.com/t1098136.html
-- 
Il Wodkino Nazionale č a : 
www.martek.it
Pagina Vb/Bestiario/Lamer Experience :
http://www.martek.it/go.asp?portamia=2
 Demo classe vb.NET :
WodkaThumb 
www.villaceleste.it
  click su "spippolando e
Programmando"

io ho trovato questo codice su un programma simile al mio e ho 
provato a modificarlo per la creazione di DBF perche questo crea 
file access
' creazione del dfile di output
''Scrittura output in file dbf linkabile con shp
Dim MyDb As Database, myws As Workspace
Dim AuTd As TableDef
Dim Field_H() As Field, Field_CODICE As Field, Field_N As Field, 
Field_DT As Field
set myws = DBEngine.Workspaces(0)
Dim fs As FileSystemObject
Set fs = CreateObject("Scripting.FileSystemObject")
  Z = 0
 For I = Len(GrdName(4)) To 1 Step -1
    If Mid$(GrdName(4), I, 1) = "\" Or Mid$(GrdName(4), I, 1) 
= ":" Then
      Z = I
      Exit For
   End If
  Next I
  K = 0
  For I = Len(GrdName(4)) To 1 Step -1
    If Mid$(GrdName(4), I, 1) = "." Then
      K = I
      Exit For
    End If
  Next I
If fs.FileExists(Mid$(GrdName(4), 1, K - 1) & ".dbf") Then
fs.DeleteFile Mid$(GrdName(4), 1, K - 1) & ".dbf"
End If
Set MyDb = myws.CreateDatabase(Mid$(GrdName(4), 1, K - 1) 
& ".dbf", dbLangGeneral, dbVersion30)
Set AuTd = MyDb.CreateTableDef("PIOGGIA")
'Creazione campi
ReDim Field_H(FIELDMAX)
    Set Field_CODICE = AuTd.CreateField("CODICE", dbLong)
    AuTd.Fields.Append Field_CODICE
    Set Field_N = AuTd.CreateField("N", dbDouble)
    AuTd.Fields.Append Field_N
    Set Field_DT = AuTd.CreateField("DT", dbDouble)
    AuTd.Fields.Append Field_DT
For I = 1 To N
   Set Field_H(I) = AuTd.CreateField("H" + Str(I), dbDouble)
   AuTd.Fields.Append Field_H(I)
Next I
MyDb.TableDefs.Append AuTd
Dim dd As Recordset
'scrittura output
Form1.Label8.Caption = "scrittura output"
    Form1.Bar1.Value = 100
 
   S = 0
  For I = Len(GrdName(4)) To 1 Step -1
    If Mid$(GrdName(4), I, 1) = "\" Or Mid$(GrdName(4), I, 1) 
= ":" Then
      S = I
      Exit For
    End If
  Next I
  F = 0
  For I = Len(GrdName(4)) To 1 Step -1
    If Mid$(GrdName(4), I, 1) = "." Then
      F = I
      Exit For
    End If
  Next I
  With Form1.Data4
    .DatabaseName = Mid$(GrdName(4), 1, S - 1)
    .Refresh
    Set .Recordset = .Database.OpenRecordset(Mid$(GrdName(4), S 
+ 1, F - S - 1) & ".dbf", dbOpenTable)
 
alla fine avevo risolto il problema aggirandolo creando un file 
vuoto dbf ma con i campi già decisi con access elo scrivo con il 
codice qui sotto
  End With
  With Form1.Data4.Recordset
     For I = 0 To R
    .AddNew
      .Fields(0).Value = CODPUNTI(I)
      .Fields(1).Value = N
      .Fields(2).Value = DT
      For J = 3 To N + 2
         .Fields(J).Value = HPTI(I, J - 3)
      Next J
    .Update
 
    Next I
  End With
  Form1.Data4.Database.Close
spero che così tu possa darmi qualche informazione in più
