Neuigkeiten:

Ist euer Problem gelöst, dann bitte den Knopf "Thema gelöst" drücken!

Mobiles Hauptmenü

ALTER TABLE

Begonnen von silentwolf, März 11, 2019, 12:46:36

⏪ vorheriges - nächstes ⏩

silentwolf

Hallo,
hab eine Frage bezüglich "ALTER TABLE"

Sub TabellenFelderZugeben()
    Dim db As DAO.Database
    Dim tbd As DAO.TableDef
   
    Dim strSQL As String
    Dim strTable As String
   
    strTable = InputBox("Geben Sie die Tabelle ein", "CSV_Datem")
   
    Set db = CurrentDb
   
    Set tbd = db.TableDefs(strTable)
   
'Zufügen von neuen Tabellenfeldern!
    db.Execute "ALTER TABLE " & strTable & " ADD COLUMN Mnummer TEXT(255)"
Set db=nothing
End Sub


Der Code funktioniert auch aber wenn ich eine Tabelle mit einen Namen wie z.B. "1011_01-12-2018" verwende bekomme ich einen Fehler.
Darf eine Tabelle nicht solchen Namen bei einer ALTER TABLE anweisung haben?

Oder muß ich da etwas anderes beachten.

Danke



PhilS

Zitat von: silentwolf am März 11, 2019, 12:46:36
Der Code funktioniert auch aber wenn ich eine Tabelle mit einen Namen wie z.B. "1011_01-12-2018" verwende bekomme ich einen Fehler.
Wie immer bei "seltsamen" Name von Tabellen, Felder, Irgendwas, sollte ein solcher Name in eckige Klammern gesetzt werden.
Neue Videoserie: Windows API in VBA

Klassische CommandBars visuell bearbeiten: Access DevTools CommandBar Editor

silentwolf

Hallo PhilS,
danke ja das hab ich auch gerade probiert und ja stimmt dann funktioniert der Code.

Vielen Dank


ebs17

Zusätzlich:
ZitatOder muß ich da etwas anderes beachten.
Kannst Du die Frage beantworten, wie es weiter geht? Ein von einem User vergebener Tabellenname (fehleranfällig) bzw. dann auch die Tabelle dazu wird wie in der folgenden Verarbeitung berücksichtigt?
Mit freundlichem Glück Auf!

Eberhard

silentwolf

Hallo Eberhard,

ich habe mir eine function geschrieben die mir die Tabelle in "[" "]" einschließt.
Und scheint zu funktionieren.

Aber ich bin natürlich sehr interessiert welchen Ansatz Du machen würdest.

Gruß

Beaker s.a.

@silentwolf
Eberhard meinte wohl eher dies
strTable = InputBox("Geben Sie die Tabelle ein", "CSV_Datem")
gruss ekkehard
Alles, was geschieht, geschieht. - Alles, was während seines Geschehens etwas anderes geschehen lässt, lässt etwas anderes geschehen. - Alles, was sich selbst im Zuge seines Geschehens erneut geschehen lässt, geschieht erneut. - Allerdings tut es das nicht unbedingt in chronologischer Reihenfolge.
(Douglas Adams, Mostly Harmless)

silentwolf

Hallo,
die Inputbox ist im Moment ist es nur zum testen. Ich muß mir noch Gedanken darüber machen wie ich es genau aufbauen möchte.

Schönen Gruß