Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.05.2009, 05:58   #1
Gurza
Пользователь
 
Регистрация: 12.05.2009
Сообщений: 53
По умолчанию Помогите - объединение файлов

Подскажите пожалуйста, как можно объеденить 2 Экселевскиз файла?

суть вопроса вот в чем:

есть два файла. в каждом по две колонки. в обоих файлах первые 2 колонки с одинаковыми данными (только в первом файле данных по этой колонке больше, потому-что это полный список товарных позиций, а во втором только необходимые товарные позиции).
другие две колонки, это: в первом файле - цена по каждой позиции; во втором файле - имеющиеся коичество на складе.

Вопрос:

Необходимо объеденить эти два файла, чтобы во втором фалй появилась третья колонка с ценами из первого файла!!!

А то выискивать в ручную в первом файле необходимую позицию, а затем перетаскивать цену во второй файл - как-то "утомительно".
Gurza вне форума Ответить с цитированием
Старый 12.05.2009, 06:42   #2
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Приложите файлы (фрагменты файлов) с данными - получите ответ.
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 12.05.2009, 07:13   #3
Gurza
Пользователь
 
Регистрация: 12.05.2009
Сообщений: 53
По умолчанию

Оригиналы файлв прикрипит не могу - т.к. это коммерческая информация. Прикрепляю "примерные" файлы".

В оригинальных файлах наименований болше 2000 тысяч!!!

Желательно узнать как ето можно делать в дальнейшем самому!
Вложения
Тип файла: rar Файл1.rar (4.0 Кб, 26 просмотров)
Тип файла: rar Файл2.rar (3.1 Кб, 22 просмотров)

Последний раз редактировалось Gurza; 12.05.2009 в 07:24.
Gurza вне форума Ответить с цитированием
Старый 12.05.2009, 07:32   #4
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Посмотрите вложение. Откройте оба файла и запустите макрос "Main".
Вложения
Тип файла: rar Файлы.rar (13.9 Кб, 54 просмотров)
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 12.05.2009, 07:44   #5
Gurza
Пользователь
 
Регистрация: 12.05.2009
Сообщений: 53
По умолчанию

Что-то у меня ничего не получается. Ексель начинает открывать файлы и вдруг выскакивает какая-то ошибка с предложением отправки отчета об ошибке. После чего он эти файлы восстанавливает но "мэин" макрос не запускается
Gurza вне форума Ответить с цитированием
Старый 12.05.2009, 07:45   #6
Gurza
Пользователь
 
Регистрация: 12.05.2009
Сообщений: 53
По умолчанию

пишет что потерян пакет Visual Basic
Gurza вне форума Ответить с цитированием
Старый 12.05.2009, 07:58   #7
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Вставьте в программный модуль файла "Файл2" код:
Код:
Sub Main()
    Dim i As Long, j As Long, a(), b()
    Application.ScreenUpdating = False: ThisWorkbook.Sheets(1).Activate
    a = Range([A2], Cells(Cells(Rows.Count, "A").End(xlUp).Row, "C")).Value
    With Workbooks("Файл1").Sheets(1)
        b = .Range(.[A2], .Cells(.Cells(Rows.Count, "A").End(xlUp).Row, "B")).Value
    End With
    For i = 1 To UBound(a, 1)
        If a(i, 1) <> "" Then
            For j = 1 To UBound(b, 1)
                If a(i, 1) = b(j, 1) Then
                    a(i, 3) = b(j, 2): Exit For
                End If
            Next
        End If
    Next
    Range([A2], Cells(UBound(a, 1) + 1, "C")).Value = a
End Sub
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 12.05.2009, 08:19   #8
Gurza
Пользователь
 
Регистрация: 12.05.2009
Сообщений: 53
По умолчанию

Спасибо огромное, но для меня, как для чайника - ето оооооочень трудно.
Может есть какой-нить более легкий способ?

А то у меня еще стоит поддержка японского и некоторые символы закорючками идут.
Gurza вне форума Ответить с цитированием
Старый 12.05.2009, 08:34   #9
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

В ячейку "C2" в файле "Файл2" введите формулу:
Код:
=ВПР(A2;[Файл1.xls]Лист1!$A$2:$B$28;2)
и "растяните" ее вниз до нужного значения. Естественно, в формуле задайте требуемый диапазон искомых значений.
P.S. англ аналог функции ВПР - VLOOKUP
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 12.05.2009, 09:02   #10
Gurza
Пользователь
 
Регистрация: 12.05.2009
Сообщений: 53
По умолчанию

Еще раз спасибо!!!
В "примерочном" файле все сработало. Но я решил создать два других "примерочных" фала и там ничего не вышло!

Суть я уловил, но некоторые нюансы не получаются

Все!!! Со всем разобрался!!!
ОГРОМНЕЙШЕЕ СПАСИБО!!!

Единственный вопрос - что означают следующие символы и на что они влияют:

1) в начале скобок - А2

2) в конце скобок - 2

Последний раз редактировалось EducatedFool; 27.05.2009 в 10:09.
Gurza вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
объединение гиперссылок petrov_ja Microsoft Office Excel 4 03.04.2009 20:22
Объединение БД Georgios БД в Delphi 3 25.01.2009 20:18
объединение файлов EXCEL в проекты redfield Microsoft Office Excel 3 25.12.2008 12:48
Объединение ячеек Katherina_Koval Microsoft Office Excel 3 29.07.2008 06:53
Объединение списков. life_burns Microsoft Office Excel 5 05.04.2008 16:13