powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Автоматический перенос данных в таблицу Exel
8 сообщений из 8, страница 1 из 1
Автоматический перенос данных в таблицу Exel
    #33565777
Loll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В теме /topic/260231&hl=
есть приблизительный необходимый мне код, но он не работает. Выдает run-time error 1004 "Нет доступа к файлу". Спотыкается на этой строке:
Workbooks.Open Filename:=ActiveWorkbook.Path+"\\"+.FoundFiles(j), ReadOnly:=True

Задачка у меня такая: сделать так чтобы запуская макрос я указывала папку и оттуда брались некоторый файлы, причем определенные файлы, желательно по шаблону мне надо исключить.
А потом скопировать с первого листа каждой книги первую строку(там могут быть и объединенные яцейки), а со второго листа все его содержимое. Все это должно помещаться последовательно сверху вниз.
...
Рейтинг: 0 / 0
Автоматический перенос данных в таблицу Exel
    #33569415
Loll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ну что? Никто не знает как написать код без ошибки? мда...
...
Рейтинг: 0 / 0
Автоматический перенос данных в таблицу Exel
    #33569686
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Loll Спотыкается на этой строке:
Workbooks.Open Filename:=ActiveWorkbook.Path+"\"+.FoundFiles(j), ReadOnly:=True


Loll
Задачка у меня такая: сделать так чтобы запуская макрос я указывала папку и оттуда брались некоторый файлы...

так тогда надо писать правильный путь
Код: plaintext
Workbooks.Open Filename:=ВыбраннаяВамиДиректория+"\"+ИмяФайла, ReadOnly:=True

если я чего не понял, приведите кусок кода
...
Рейтинг: 0 / 0
Автоматический перенос данных в таблицу Exel
    #33572345
Loll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сам код здесь /topic/260231&hl=
Просто там тема что-то зависла :( А в вашем варианте получается что у меня постоянно будет одна и та же папка, а нужно чтобы вылезал месседж бокс с запросом.
...
Рейтинг: 0 / 0
Автоматический перенос данных в таблицу Exel
    #33587958
Loll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гм.. Мой вопрос слишком сложен или слишком легок?
...
Рейтинг: 0 / 0
Автоматический перенос данных в таблицу Exel
    #33588311
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ни то, ни другое :)
Макрос запрашивающий каталог очень прост и короток. Но...
В общем примерно так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
Sub aaaa()
     Dim oShell as Object, oFolder as Object

     Set oShell = CreateObject("Sheel.Application")
     Set oFolder = oShell.BrowseForFolder( 0 , "Where is my files?",  0 )
     Set oShell = Nothing
     If oFolder is Nothing Then
         ' user cancel dialog, nothing were selected
         Exit Sub
     End If

     ' add your code here
     Worksheets( 1 ).Range("A1").Value = "Selected folder is:"
     Worksheets( 1 ).Range("A2").Value = oFolder
 
    Set oFolder = Nothing
End Sub
...
Рейтинг: 0 / 0
Автоматический перенос данных в таблицу Exel
    #33590499
Loll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ммм... акцентирую внимание на том что я очень мало смыслю с програмированиии... мне нужно просто вот этот код:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
set ShA=ActiveSheet
i= 1 
With Application.FileSearch
    .LookIn = ActiveWorkbook.Path
    .Filename = "shablon*.xls"
    If .Execute >  0  Then
     for j= 1  to .FoundFiles.Count
       Workbooks.Open Filename:=ActiveWorkbook.Path+"\"+.FoundFiles(j), ReadOnly:=True
       ShA.Cells(i, 1 ).Value=ActiveSheet.Cells( 1 , 1 ).Value
       ActiveWorkbook.Close
       i=i+ 1 
     next
    else
     MsgBox("Не найдены файлы по шаблону!")
    End If
End With
Привести в человеческий вид, а последний приведенный макрос просто позволяет выбрать папку и копирует ее имя в ячеку :(
...
Рейтинг: 0 / 0
Автоматический перенос данных в таблицу Exel
    #33591738
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
примерно так
Код: 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.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
Function getFolder()
     Dim oShell As Object, oFolder As Object

     Set oShell = CreateObject("Shell.Application")
     Set oFolder = oShell.BrowseForFolder( 0 , "Where is my files?",  0 )
     Set oShell = Nothing
     If oFolder Is Nothing Then
         ' user cancel dialog, nothing were selected
         Exit Function
     End If

     ' add your code here
     getFolder = oFolder.self.Path
     
    Set oFolder = Nothing
End Function
Sub FilesSearch()
       
    strFolder = getFolder
    
    If strFolder = "" Then Exit Sub
    
    Set ShA = ActiveSheet
    i =  1 
    
    With Application.FileSearch
        .LookIn = strPath
        .Filename = "shablon*.xls"
        If .Execute >  0  Then
            For j =  1  To .FoundFiles.Count
                Workbooks.Open Filename:=ActiveWorkbook.Path + "\" + .FoundFiles(j), ReadOnly:=True
                ShA.Cells(i,  1 ).Value = ActiveSheet.Cells( 1 ,  1 ).Value
                ActiveWorkbook.Close
                i = i +  1 
            Next
        Else
            MsgBox ("Íå íàéäåíû ôàéëû ïî øàáëîíó!")
        End If
    End With
End Sub
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Автоматический перенос данных в таблицу Exel
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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