Det tit lidt svært at styre, men du kan prøve med: Felt1:Val((CDbl([Felt2])+CDbl([Felt3]))/2))
Hvis dette ikke virker, vil jeg anbefale dig at benytte en alternativ metode: Opret tabellen, som du ønsker den. Benyt istedet en tilføjelsesforespørgsel til at indsætte data. Forinden skal du selvfølgelig lige køre en sletteforespørgsel (Delete From [Din tabel])
Dette er den mest hensigtsmæssige måde, da du derved kan indeksere relevante felter, ligesom du kan begrænse feltstørrelser til det minimale.
'Procedüren opretter en ny tabel med et valgfrit navn gemt i variablen a. 'Argumenterne er:("tekst", dbText, 30). "tekst" er feltets navn, dbText er felttypen, 30 er feltlængden. 'Feltlængden kan kun bestemmes ved tekstfelter, idet den ved numeriske felter og memo sættes af Access. Dim db47 As Database Dim tdfNew As TableDef Det kan gøres med en VBa-procedüre:
Dim a As String On Error GoTo Errorhandler a = InputBox(Prompt:="Indtast navnet på den nye tabel:", Title:="Opret ny tabel.", Default:="") Set db1 = OpenDatabase("C:\db1") Set tdfNew = db1.CreateTableDef(a) With tdfNew .Fields.Append .CreateField("tekst", dbText, 30) .Fields.Append .CreateField("memo", dbMemo) .Fields.Append .CreateField("dato", dbDate) .Fields.Append .CreateField("tal", dbInteger) .Fields.Append .CreateField("tal1", dbLong) .Fields.Append .CreateField("tal2", dbDouble) db47.TableDefs.Append tdfNew End With Errorhandler: If Err = 3010 Then MsgBox "Der findes allerede en tabel med dette navn." & vbNewLine & vbNewLine & "Procedüren forlades." End If
Dim db47 As Database Dim tdfNew As TableDef Dim a As String On Error GoTo Errorhandler a = InputBox(Prompt:="Indtast navnet på den nye tabel:", Title:="Opret ny tabel.", Default:="") Set db1 = OpenDatabase("C:\db1") Set tdfNew = db1.CreateTableDef(a) With tdfNew .Fields.Append .CreateField("tekst", dbText, 30) .Fields.Append .CreateField("memo", dbMemo) .Fields.Append .CreateField("dato", dbDate) .Fields.Append .CreateField("tal", dbInteger) .Fields.Append .CreateField("tal1", dbLong) .Fields.Append .CreateField("tal2", dbDouble) db47.TableDefs.Append tdfNew End With Errorhandler: If Err = 3010 Then MsgBox "Der findes allerede en tabel med dette navn." & vbNewLine & vbNewLine & "Procedüren forlades." End If
ok - det ser ud til at jeg kan bruge begge løsninger...
tak for det!
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.