Ich habe ein paar Tabellen, die ich mit einem Makro importieren und dann einige SQL-Abfragen ausführen, derzeit muss ich die Dateien umbenennen, bevor ich sie importiere und ihre Namen nach dem Import automatisch ändern möchte.Ändern der Tabellennamen mit VBA
Zum Beispiel habe ich eine Datei namens SSIReport()
und möchte diese Tabelle in SSI_Data
ändern. Ein Problem besteht darin, dass in den Klammern von SSIReport ein Datum steht, an dem die Datei generiert wird, so dass sie sich ändert. Hier ist ein wenig Code, den ich derzeit verwende, um Importfehlertabellen zu löschen, ich bin nicht sicher, ob es eine Möglichkeit gibt, diese in Umbenennungstabellen umzuwandeln.
For Each otable In CurrentDb.TableDefs
If otable.Name Like "*ImportErrors*" Then
CurrentDb.TableDefs.Delete otable.Name
End If
Next otable
Ich versuchte ein DoCmd.Rename obwohl mit wechselnden Dateinamen ich nicht sicher war, wie man ein LIKE in das einbezieht. Ich habe auch eine Schleife, die Importfehlertabellen löschte. – Rukgo
Haben Sie eine Tabelle, sagen wir tblMatrix, dann können Sie das Teilwort haben, also SSI und dann den Tabellennamen, also SSI_Data, dann können Sie den Dateinamen in dieser Tabelle überprüfen und mit docmd.transferspreadsheet zurückgeben. Nicht im Zugriff auf mo, also nicht 100% sicher, das ist wahrscheinlich wo ich https://msdn.microsoft.com/en-us/library/office/ff844793.aspx starten würde –
'DoCmd.Rename strNewName, acTable, strOldName' funktioniert. Ich bin mir nicht sicher, was das eigentliche Problem ist, das Sie haben. – Andre