powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Помогите ускорить замену данных в Excel'е.
21 сообщений из 21, страница 1 из 1
Помогите ускорить замену данных в Excel'е.
    #35739696
sphome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть несколько файлов Excel.
Первый содержит ID позиции в БД (ну и кое-что ещё, неважно).
Во-втором файле кроме ID позиции ещё содержится наименование товара. Эти файлы - обычный экспорт из базы данных.

Можно ли как-то автоматизировать процесс замены ID_товара в первом файле на его наименование из второго? Файлы достаточно большого размера, делать это вручную... ну очень долго...
...
Рейтинг: 0 / 0
Помогите ускорить замену данных в Excel'е.
    #35739709
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не уверен, но возможно ВПР Вам поможет


I Have Nine Lives You Have One Only
THINK!
...
Рейтинг: 0 / 0
Помогите ускорить замену данных в Excel'е.
    #35739733
sphome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
HandKot,

Что такое ВПР???
...
Рейтинг: 0 / 0
Помогите ускорить замену данных в Excel'е.
    #35739736
_slan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sphome,
насколько большой размер? сколько позиций?
...
Рейтинг: 0 / 0
Помогите ускорить замену данных в Excel'е.
    #35739766
_slan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_slan_,

сортировкой можно быстро сделать..

или организовать такую базу данных, чтобы ID были бы индексами массива, т.е должны начинаться с 1 и идти без пропусков в возрастающем порядке.
тогда можно загрузить данные в массив и не искать соответствие, а обращаться к нужному значению, используя ID как индекс.
...
Рейтинг: 0 / 0
Помогите ускорить замену данных в Excel'е.
    #35739770
sphome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
_slan_,

122700 позиций.
...
Рейтинг: 0 / 0
Помогите ускорить замену данных в Excel'е.
    #35739820
_slan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sphome,
да, впр будет долго..

я делал так:

копировал данные из обоих файлов в третий(или просто на новый лист в любом из них) одни под другими:

Код: plaintext
1.
2.
3.
 1  id1
..
n
  id2  название


именно в таком виде, как указано - данные из первого файла пронумерованы в первом столбце, данные из второго нумеровать не нужно, первый столбец оставляем пустым.

получившуюся таблицу из 3х столбцов сортируем по второму столбцу

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

если такой уверенности нет, то заполняем четвертый столбец формулами, выводящими наименование при совпадении близлежащих строк.

сортируем обратно по первому столбцу - напротив идентификаторов располагаются нужные наименования.. копируем их в нужный файл..
...
Рейтинг: 0 / 0
Помогите ускорить замену данных в Excel'е.
    #35739862
sphome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
_slan_,

Так у меня не получиться. При описании ситуации я допустил ошибку.

Итак, первый файл содержит: Группу_Товара, ID_Производителя, Наименование_Товара, Описание и Цену.
Второй файл: ID_Производителя и Наименование_Производителя.

Задача: Заменить в первом файле ID_Производителя на Наименовние_Производителя из второго файла.
...
Рейтинг: 0 / 0
Помогите ускорить замену данных в Excel'е.
    #35739932
_slan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sphome,

почему не получится?

вырываем из первого файла id_производителя, нумеруем
ниже во второй и третий столбцы записываем id_производителя и Наименование_Производителя

и вперед..
...
Рейтинг: 0 / 0
Помогите ускорить замену данных в Excel'е.
    #35739960
LidaRoz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
интересно почему замену данных надо делать в Excel, а не создать запрос в бд и выгрузить уже нормальные данные в excel??
...
Рейтинг: 0 / 0
Помогите ускорить замену данных в Excel'е.
    #35739987
_slan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
LidaRoz, потомучто не умеем :)
...
Рейтинг: 0 / 0
Помогите ускорить замену данных в Excel'е.
    #35739992
_slan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
_slan_,

а вообще, интересно бы сравнить по скорости..
...
Рейтинг: 0 / 0
Помогите ускорить замену данных в Excel'е.
    #35740008
_slan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sphome, выложите кусочки ваших файлов для примера, lidaroz сделает запросом, я сортировкой и посмотрим :)
...
Рейтинг: 0 / 0
Помогите ускорить замену данных в Excel'е.
    #35740015
A-Nik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sphome, выложи небольшой файл-образец
...
Рейтинг: 0 / 0
Помогите ускорить замену данных в Excel'е.
    #35740168
sphome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
A-Nik,

У меня нет доступа к БД. К тому же та БД не поддерживает SQL. Кое-как получилось сделать экспорт в текстовый файл, а его уже открыл Экселем.
...
Рейтинг: 0 / 0
Помогите ускорить замену данных в Excel'е.
    #35740182
sphome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В столбец MANUFAC_ID (Лист1) надо вставить значение соответствующее значение NAME (Лист2).
...
Рейтинг: 0 / 0
Помогите ускорить замену данных в Excel'е.
    #35740212
A-Nik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sphome, тебе ж уже подсказали - воспользоваться функцией ВПР()
...
Рейтинг: 0 / 0
Помогите ускорить замену данных в Excel'е.
    #35740430
sphome
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
A-Nik,

Попробовал, ВПР работает. НО. С формулами у меня что-то не получется.
Делаю:

=ВПР(C3; I3:J457; 2; ЛОЖЬ)
=ВПР(C4; I3:J457; 2; ЛОЖЬ)

А когда начинаю раскидывать дальше, Excel мне автоматом у второго параметра делает Inc, как и у первого. Т.е.

=ВПР(C5; I4:J458; 2; ЛОЖЬ)

Сколько не возился, ничего не получается. Мне надо, чтобы первый параметр зависел от ячейки, а второй был константой. Как это сделать?
...
Рейтинг: 0 / 0
Помогите ускорить замену данных в Excel'е.
    #35740442
A-Nik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sphome, внематочноно посмотри на мою формулу, а затем на свою!

Для закрепления диапазона используется знак "$":
=ВПР(C3; I $ 3:J $ 457; 2; ЛОЖЬ)
...
Рейтинг: 0 / 0
Помогите ускорить замену данных в Excel'е.
    #35740846
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор=ВПР(C3; I3:J457; 2; ЛОЖЬ)
=ВПР(C4; I3:J457; 2; ЛОЖЬ)

А когда начинаю раскидывать дальше, Excel мне автоматом у второго параметра делает Inc, как и у первого. Т.е.

=ВПР(C5; I4:J458; 2; ЛОЖЬ)

Сколько не возился, ничего не получается. Мне надо, чтобы первый параметр зависел от ячейки, а второй был константой. Как это сделать?
я делаю так: диапазону, в котором ищем, присваиваю имя и получается такая формула

Код: plaintext
=ВПР(C5; ИмяДиапазона;  2 ; ЛОЖЬ)



I Have Nine Lives You Have One Only
THINK!
...
Рейтинг: 0 / 0
Помогите ускорить замену данных в Excel'е.
    #35741272
_slan_
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я упомянул этот способ, но, если правду, не надеялся..

но у вас именно подходящая база :)

можете использовать следующий макрос:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Sub maname()
    Dim arr_id, arr_mnm, i As Long, rng As Range
    With Sheets( 1 ): Set rng = .Range(.Cells( 1 ,  3 ).End(xlDown), .Cells(Rows.Count,  3 ).End(xlUp)): End With
    With Sheets( 2 ): arr_mnm = .Range(.Cells( 1 ,  2 ).End(xlDown), .Cells(Rows.Count,  2 ).End(xlUp)): End With
    arr_id = rng
     For i =  1  To UBound(arr_id)
        arr_id(i,  1 ) = arr_mnm(arr_id(i,  1 ),  1 )
    Next
    rng = arr_id
End Sub
...
Рейтинг: 0 / 0
21 сообщений из 21, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Помогите ускорить замену данных в Excel'е.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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