Avatar billede jaze Nybegynder
31. december 2004 - 09:28 Der er 7 kommentarer og
1 løsning

Dynamisk dannelse af tabelnavn

Når jeg fyrer min SQL sætning af kunne jeg godt tænke mig at blive promptet for et navn til tabellen, så jeg kan vælge et nyt navn, hver dag.

Men hvordan?

into [??????]

Jaze
Avatar billede terry Ekspert
31. december 2004 - 09:48 #1
I think the only way you will be able to do this is building your SQL Dynamicaly from a form.
Avatar billede terry Ekspert
31. december 2004 - 09:51 #2
there is a simpåle example here which I think you could use with soem small modifications

http://www.eksperten.dk/spm/575625
Avatar billede terry Ekspert
31. december 2004 - 09:52 #3
so in the text field you add your table name
Avatar billede jaze Nybegynder
31. december 2004 - 09:55 #4
I was affraid you would suggest that. But is it possible to use an inputbox and a var. instead?
Avatar billede terry Ekspert
31. december 2004 - 10:16 #5
You can use an input box but it still requirs you to build the SQL dynamicaly
Avatar billede jaze Nybegynder
31. december 2004 - 10:30 #6
I will then build the SQL dynamicaly in an a module, no problem.

Thanx and Happy New Year
Avatar billede terry Ekspert
31. december 2004 - 10:32 #7
thanks and a Happy New Year to you too
Avatar billede mugs Novice
31. december 2004 - 17:07 #8
I VBA kan du bruge en inputbox:

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 db47 = OpenDatabase("D:\XP\db47")
Set tdfNew = db47.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
MsgBox "Tabellen:" & vbNewLine & vbNewLine & a & vbNewLine & vbNewLine & "er nu oprettet.", Title:="Udført."
End With
Errorhandler:
If Err = 3010 Then
MsgBox "Der findes allerede en tabel med dette navn." & vbNewLine & vbNewLine & "Procedüren forlades."
Else:
MsgBox Err.Description
End If
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester