Мне нужно написать VBA, который будет прокручивать 128 разных таблиц, которые связаны в моей базе данных доступа из 128 различных файлов excel, и берут данные и помещают их в одну таблицу. Каждая таблица такая же, как и другие TS. Я смог написать это:Цикл VBA, который будет считываться из разных таблиц
strSQL = "INSERT INTO Tbl_GTAS (SF133_Rpt_Line, LineDescription, LineAmt,
TS) SELECT [75-XXXX-XXXX_NEW SF 133].F1, [75-XXXX-XXXX_NEW SF 133].F2,
[75-XXXX-XXXX_NEW SF 133].F3, '75-XXXX-XXXX' AS TS FROM [75-XXXX-XXXX_NEW SF 133]
GROUP BY [75-XXXX-XXXX_NEW SF 133].F1, [75-XXXX-XXXX_NEW SF 133].F2,
[75-XXXX-XXXX_NEW SF 133].F3, '75-XXXX-XXXX';"
Мне просто нужно как-то это сделать, и потяните за каждую из моих столов.
Все мои таблицы имеют одинаковое соглашение об именах с XX, XXXX или X после 75-. Любая помощь будет очень признательна!
Спасибо!
редактировать:
Полный код VBA:
Public Function GTAS()
Dim SBRLink2017 As DAO.Database
Set SBRLink2017 = CurrentDb
Dim delSQL As String
Dim updSQL As String
Dim str1SQL As String
DoCmd.SetWarnings False
delSQL = "DELETE tbl_GTAS.* FROM tbl_GTAS';"
DoCmd.RunSQL (delSQL)
str1SQL = "INSERT INTO Tbl_GTAS (SF133_Rpt_Line, LineDescription, LineAmt, TS) SELECT [75-XXXX-XXXX_NEW SF 133].F1, [75-XXXX-XXXX_NEW SF 133].F2, [75-XXXX-XXXX_NEW SF 133].F3, '75-XXXX-XXXX' AS TS FROM [75-XXXX-XXXX_NEW SF 133] GROUP BY [75-XXXX-XXXX_NEW SF 133].F1, [75-XXXX-XXXX_NEW SF 133].F2, [75-XXXX-XXXX_NEW SF 133].F3, '75-XXXX-XXXX';"
DoCmd.RunSQL str1SQL
updSQL = "UPDATE Tbl_GTAS SET Tbl_GTAS.TS_SF133_Rpt_Line = [TS] & '_' & [SF133_Rpt_Line];"
DoCmd.RunSQL (updSQL)
DoCmd.SetWarnings True
End Function
Я обновил сообщение, чтобы включить весь код, который я использую. Где это будет в этом коде? И у меня есть таблица со всеми указанными TS, я предполагаю, что мне нужно будет заменить sTable на это имя таблицы? БЛАГОДАРЯ!!!!!! – AF15
@ AF15 - Это все дополнительные и отдельные вопросы от оригинала. Однако вы можете поместить этот цикл, где оператор 'str1SQL', как я вижу. Я понятия не имею, что означает «все перечисленные TS» *, поэтому я не могу вам помочь. –
Это прекрасно и отлично работает. Один вопрос. Как мне получить его, чтобы вернуть только TS, а не часть «_New SF 133». Благодаря! – AF15