Добрый день, прошу помощи, так как сам не могу разобраться. Я пытался сам слепить макрос, но не получилось у меня. [vba]
Код
Sub Copy_info_from_file() 'пример использования Application.ScreenUpdating = False Filename$ = GetFilePath() If Filename$ = "" Then Exit Sub ' MsgBox "выбран файл: " & Filename$ Range("B4:E14").Select Selection.Copy ActiveSheet.Paste Range("C10").Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False End Sub
Function GetFilePath(Optional ByVal Title As String = "Выберите файл для обработки", _ Optional ByVal InitialPath As String = "D:\Users\Aldakushev_ms\Documents\форум excel\ТР", _ Optional ByVal FilterDescription As String = "Все файлы", _ Optional ByVal FilterExtention As String = "*.*") As String On Error Resume Next With Application.FileDialog(msoFileDialogOpen) .ButtonName = "Выбрать": .Title = Title: .InitialFileName = GetSetting(Application.Name, "GetFilePath", "folder", InitialPath) .Filters.Clear: .Filters.Add FilterDescription, FilterExtention If .Show <> -1 Then Exit Function GetFilePath = .SelectedItems(1) folder$ = Left(.SelectedItems(1), InStrRev(.SelectedItems(1), "\")) SaveSetting Application.Name, "GetFilePath", "folder", folder$ End With End Function
[/vba] Есть для примера 2 файла: "шаблон" и "перечень". Файл шаблон может иметь любое название и таких файлов будет много, файл перечень 1 и в него должны собираться данные. Я так понимаю, что у меня через макрос копируются данные из моей текущей книги(Перечень тех.реш А), а нужно из выбираемого файла, который ты выбираешь в диалоговом окне. Помогите допились макрос так, чтобы [vba]
Код
Range("B4:E14").Select Selection.Copy
[/vba] выбирались данные в выбранной книге, а затем вставлялось в текущей, открытом файле "перечень" (вставляться данные должны в выбираемую ячейку - это любая ячейка в столбце С)
Добрый день, прошу помощи, так как сам не могу разобраться. Я пытался сам слепить макрос, но не получилось у меня. [vba]
Код
Sub Copy_info_from_file() 'пример использования Application.ScreenUpdating = False Filename$ = GetFilePath() If Filename$ = "" Then Exit Sub ' MsgBox "выбран файл: " & Filename$ Range("B4:E14").Select Selection.Copy ActiveSheet.Paste Range("C10").Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False End Sub
Function GetFilePath(Optional ByVal Title As String = "Выберите файл для обработки", _ Optional ByVal InitialPath As String = "D:\Users\Aldakushev_ms\Documents\форум excel\ТР", _ Optional ByVal FilterDescription As String = "Все файлы", _ Optional ByVal FilterExtention As String = "*.*") As String On Error Resume Next With Application.FileDialog(msoFileDialogOpen) .ButtonName = "Выбрать": .Title = Title: .InitialFileName = GetSetting(Application.Name, "GetFilePath", "folder", InitialPath) .Filters.Clear: .Filters.Add FilterDescription, FilterExtention If .Show <> -1 Then Exit Function GetFilePath = .SelectedItems(1) folder$ = Left(.SelectedItems(1), InStrRev(.SelectedItems(1), "\")) SaveSetting Application.Name, "GetFilePath", "folder", folder$ End With End Function
[/vba] Есть для примера 2 файла: "шаблон" и "перечень". Файл шаблон может иметь любое название и таких файлов будет много, файл перечень 1 и в него должны собираться данные. Я так понимаю, что у меня через макрос копируются данные из моей текущей книги(Перечень тех.реш А), а нужно из выбираемого файла, который ты выбираешь в диалоговом окне. Помогите допились макрос так, чтобы [vba]
Код
Range("B4:E14").Select Selection.Copy
[/vba] выбирались данные в выбранной книге, а затем вставлялось в текущей, открытом файле "перечень" (вставляться данные должны в выбираемую ячейку - это любая ячейка в столбце С)duckky