Копирование данных из одного excel файла в другой - VBA
Формулировка задачи:
Добрый день! Знаю тут много тем про копирование данных. Но я так и не нашла по теме. Вобщем мне надо из разных файлов собрть ин6формацию в один.
Я сделала это так:
Вобщем каждый раз открываю и закрываю файл чтобы вытащить значение одной ячейки. Вот как сделать чтобы сразу вытаскивать эти все знаения и вставлять их в нужные ячейки. И вот интересно как сделать чтобы допустим из нужного файла по одному столбцу найти значение допустим а = 3407 и если нашлось то выбераем значение из столбца рядом напротив которого эта цифра и вставляем ее в общий файл в нужную ячейку. надеюсь понятно объяснила)
Решение задачи: «Копирование данных из одного excel файла в другой»
textual
Листинг программы
Sub Кнопка2_Щелчок() ' Загрузка предварительной заявки
MainName = ActiveWorkbook.Name
If Cells(3, 3) <> Empty Then
MsgBox "Очистите поле"
Exit Sub
Else
adres_svod_zayavka_rb = GetFilePath("Выберите файл Предварительной заявки", , "Документы Excel", "*.xlsx, *.xls") ' запрашиваем имя файла
If adres_svod_zayavka_rb = "" Then Exit Sub ' выход, если пользователь отказался от выбора файла
Workbooks.Open Filename:=adres_svod_zayavka_rb
Filename = ActiveWorkbook.Name
Workbooks(Filename).Worksheets("Лист1").Range("A1:LA200").Copy
With Workbooks(MainName)
.Activate
.Worksheets("Заявка РБ").Range("С2:LC201").PasteSpecial Paste:=xlPasteValues
End With
Application.CutCopyMode = False
Workbooks(Filename).Close SaveChanges = False
Cells(2, 2).Select
End If
End Sub
Function GetFilePath(Optional ByVal Title As String = "Выберите файл для загрузки", _
Optional ByVal InitialPath As String = "c:\", _
Optional ByVal FilterDescription As String = "Книги Excel", _
Optional ByVal FilterExtention As String = "*.xls*") As String
' функция выводит диалоговое окно выбора файла с заголовком Title,
' начиная обзор диска с папки InitialPath
' возвращает полный путь к выбранному файлу, или пустую строку в случае отказа от выбора
' для фильтра можно указать описание и расширение выбираемых файлов
On Error Resume Next
With Application.FileDialog(msoFileDialogOpen)
.ButtonName = "Выбрать": .Title = Title: .InitialFileName = InitialPath
.Filters.Clear: .Filters.Add FilterDescription, FilterExtention
If .Show <> -1 Then Exit Function
GetFilePath = .SelectedItems(1): PS = Application.PathSeparator
End With
End Function