powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как закачать группу файлов?
18 сообщений из 18, страница 1 из 1
Как закачать группу файлов?
    #32298784
Фотография Daf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте! Подскажите пожалуйста, как импортировать данные в Access 97 группу текстовых файлов. Данные из этих фалов должны попасть в одну таблицу. Используя DoCmd.TransferText один файл импортируется, а вот группа файлов, у которой имена разные, расширение одно пока не получается...

Подскажите, кто сможет...
...
Рейтинг: 0 / 0
Как закачать группу файлов?
    #32298798
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чтоб не мучаться, я бы сначала получил один файл:
copy 1.txt + 2.txt result.txt /b
...
Рейтинг: 0 / 0
Как закачать группу файлов?
    #32298811
Фотография Daf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Geo, я не понял, где это нужно писать, в Vb?
...
Рейтинг: 0 / 0
Как закачать группу файлов?
    #32298815
incold
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поиск по форуму даст результаты как получить список файлов в каталоге.
Для полученного списка (массив или как ще не важно) выполняешь DoCmd.TransferText
...
Рейтинг: 0 / 0
Как закачать группу файлов?
    #32298873
RIm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пример, как импортировать все листы из всех XLS файлов в папке
Сначала строим массив с именами всех листов в XLS файле, заетм их импортируем.


Текст вырезал из модуля, поудалял лишнего. Может и нужного чего удалил :-)

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
Dim strFile As String
    strFile = Dir( "d:\temp\*.xls" )
    Do Until strFile =  ""
        Dim wbname As String
        wbname = " d:\ПЛАН\ " & strFile
        x.Workbooks.Open wbname
        x.Visible = False

        Dim ws As Worksheet
        wsi = 0 
        For Each ws In x.Worksheets
            'Debug.Print ws.Name
            wsi = wsi +  1 
            wsname(wsi) = ws.Name
        Next ws
        x.Workbooks(strFile).Close SaveChanges:=False

        Dim ii As Long
        For ii =  1  To wsi
            DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9,  "_plan_2004_temp ",  wbname, False, wsname(ii) & " !A:AE"
        Next ii

      strFile = Dir


    Loop

...
Рейтинг: 0 / 0
Как закачать группу файлов?
    #32299282
Фотография Daf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rlm! Большое спасибо! Я понял как это сделать у меня.
...
Рейтинг: 0 / 0
Как закачать группу файлов?
    #32299467
Фотография Daf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Для тех кто сталкнется с похожей проблемой выкладываю как это сделал я...

Dim a, b, c As String
Dim strFile As String
strFile = Dir("e:\ямбург\*.irc")
b = CurDir

Do Until strFile = ""
strFile = Dir
If strFile <> "" Then
c = "e:\ямбург\" & strFile
DoCmd.TransferText acImportDelim, , "НГПА_02 перех", c, True
End If
Loop
...
Рейтинг: 0 / 0
Как закачать группу файлов?
    #32300336
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
В таком варианте есть несколько багов.

1. Первый файл не будет обработан.
2. Проверка If strFile <> "" Then лишняя.
3. Сточка b = CurDir и описание переменной b тоже лишние.
...
Рейтинг: 0 / 0
Как закачать группу файлов?
    #32300680
Фотография Daf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо за подсказку, уже исправил...

А на счет : Сточка b = CurDir и описание переменной b
то это мысли вслух и планы на будущее ... и в программу попало случайно.
...
Рейтинг: 0 / 0
Как закачать группу файлов?
    #32300691
Фотография Daf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Забыл добавить.
Проверка Проверка If strFile <> "" всетаки нужна, так как функция переберет все файлы в директории и в итоге вернет пустую строку. А DoCmd.TransferText acImportDelim ругается на е:\ямбург\"null" так, как не знает какой смотреть файл.
...
Рейтинг: 0 / 0
Как закачать группу файлов?
    #32301183
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
> Проверка Проверка If strFile <> "" всетаки нужна

Не нужна, потому что проверка Do Until strFile = "" и выход из цикла произойдет раньше. Только, конечно, строку strFile = Dir надо перенести в конец цикла, чтобы исправить первый из перечисленных мной багов.

Dim a, c As String
Dim strFile As String
strFile = Dir("e:\ямбург\*.irc")

Do Until strFile = ""
c = "e:\ямбург\" & strFile
DoCmd.TransferText acImportDelim, , "НГПА_02 перех", c, True
strFile = Dir
Loop

> DoCmd.TransferText acImportDelim ругается на е:\ямбург\"null" так, как не знает какой смотреть файл.

А как получилось е:\ямбург\"null", если задано e:\ямбург\*.irc?
...
Рейтинг: 0 / 0
Как закачать группу файлов?
    #32301324
Фотография Daf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>А как получилось е:\ямбург\"null", если задано e:\ямбург\*.irc?

' Возвращает имя файла с указанным расширением. При наличии нескольких
' файлов *.IRC возвращается первый найденный файл.
StrFile = Dir("e:\ямбург\*.irc")

' Повторно вызывает Dir без аргументов для возврата следующего файла
' с расширением *.IRC, находящегося в том же каталоге.
StrFile = Dir

А вот когда цикл переберет все файлы *.IRC он в итоге вернет Null... Как раз для этого я и пишу:
Do Until strFile = ""
...
Рейтинг: 0 / 0
Как закачать группу файлов?
    #32301348
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Во-первых, Dir может вернуть только пустую строку, а не Null. Во-вторых, против условия выхода из цикла я и не возражал. В-третьих, откуда все-таки берется слово null без расширения, с маленькой буквы и с кавычками вокруг?
...
Рейтинг: 0 / 0
Как закачать группу файлов?
    #32301357
Фотография Daf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владимир Саныч. Под написанием "null" я как раз и имел ввиду пустую строку... Хотел попонятней объяснить, а получилось как всегда...
...
Рейтинг: 0 / 0
Как закачать группу файлов?
    #32301378
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
И что - по-прежнему ругается, несмотря на то что поставлено условие выхода?
...
Рейтинг: 0 / 0
Как закачать группу файлов?
    #32301381
Фотография Daf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет, нет... Все работает. Спасибо!
...
Рейтинг: 0 / 0
Как закачать группу файлов?
    #32302568
PanzerFaust
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дико извиняюсь за ламерский вопрос - а в какой функции надо этот кусочек кода использовать - а то почти аналогичная задача стоит, а откуда грызть начать - непонятно. Может немного расширить примерчик - до функции...хотя бы
Благодарность непросвещенного народонаселения не будет иметь границ:))

Есть в директории некий файл с непостоянным названием и постоянной структурой (или 2-3, иногда 100 :) файлов Ёкселя) оттуда в таблицу надо метнуть три столбца. С одним файлом я соорудил процедуру, а с неопределенным списком - трабл:(
...
Рейтинг: 0 / 0
Как закачать группу файлов?
    #32302685
Фотография Daf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Посмотри чуть-чуть по выше. Rlm вроде все уже написал...
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как закачать группу файлов?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]