Новости:

Теперь на форум можно залогиниться / зарегистрироваться с помощью ВКонтакте. Уже существующие пользователи могут связать свою учетную запись с аккаунтом ВКонтакте одним кликом в профиле пользователя http://forum.msexcel.ru/index.php?action=profile;area=account

Главное меню

Автоматическое добавление строк из одного листа в другой

Автор labuh, 03.12.2009, 13:09

« назад - далее »

labuh

Цитата: iron priest от 03.12.2009, 16:35
поппытался сделать шоб автоматом подставляло новые позиции но столкнулся с циклической ссылкой, а как переделать пока не знаю


у вас большой диапазон значений товара?
В прайсе поставщика примерно 3000 строк.
Что касается значений, то в принципе те которые в Прайс1 и Прайс2

labuh

Цитата: iron priest от 03.12.2009, 16:35
поппытался сделать шоб автоматом подставляло новые позиции но столкнулся с циклической ссылкой, а как переделать пока не знаю

у вас большой диапазон значений товара?
Уважаемый, iron priest, с нетерпением жду вашего решения

iron priest

посмотрите мои мучения творения

предупреждаю прайс 1=6 метров
прайс2=1.5


поэтому смогу кинуть только на мыло

labuh

Цитата: iron priest от 03.12.2009, 17:46
посмотрите мои мучения творения
предупреждаю прайс 1=6 метров
прайс2=1.5
поэтому смогу кинуть только на мыло

Жду с нетерпением на labuhi@mail.ru

iron priest

рекомендую подождать решений (если таковые будут) от мастеров макросов

labuh

Цитата: iron priest от 03.12.2009, 17:46
посмотрите мои мучения творения

предупреждаю прайс 1=6 метров
прайс2=1.5

поэтому смогу кинуть только на мыло

При нажатии на кнопку переноса новых позиций:
1. Примерно минуту просчитывает ячейки, а в конце пишет Run-time error '438' Object doesn't support this property or method

Продолжаю тестировать

iron priest

#21
странно, у меня все нормально

у вас оба файла открыты? шоб быстрее вычисляло лучше оба файла открыть


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

если кто может сделать чтобы макрос
Макрос4 Макрос
'

'
   Range("M2").Select
   Range(Selection, Selection.End(xlToRight)).Select
   Range(Selection, Selection.End(xlDown)).Select
   Selection.Copy
   Selection.End(xlToLeft).Select
   Selection.End(xlToLeft).Select
   Selection.End(xlToLeft).Select
   Selection.End(xlToLeft).Select
   Selection.End(xlToLeft).Select
   Range("B3").Select
   Selection.End(xlDown).Select
   Range("B11").Select
   Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
       :=False, Transpose:=False
   Application.CutCopyMode = False
   ActiveWorkbook.Worksheets("Салфетки").Sort.SortFields.Clear
   ActiveWorkbook.Worksheets("Салфетки").Sort.SortFields.Add Key:=Range( _
       "B11:B5009"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
       xlSortNormal
   With ActiveWorkbook.Worksheets("Салфетки").Sort
       .SetRange Range("B11:J5009")
       .Header = xlGuess
       .MatchCase = False
       .Orientation = xlTopToBottom
       .SortMethod = xlPinYin
       .Apply
   End With
   Selection.Replace What:=" ", Replacement:="", LookAt:=xlWhole, _
       SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
       ReplaceFormat:=False
   Range("B11").Select
End Sub


вставлял данные в последнюю строку графы В которая имеет значение

labuh

Цитата: iron priest от 03.12.2009, 18:38
странно, у меня все нормально

у вас оба файла открыты? шоб быстрее вычисляло лучше оба файла открыть

Открыты оба файла. Ужасные тормоза.

В любо случае огромное спасибо. Буду ждать новых решений от Вас или других мастеров данного направления.

GWolf

#23
Добрый вечер!

Хочу предложить один из вариантов решения Вашей задачи. Требуется конечно кое какая доработка, так например не копируются формулы. Но идея готова. Если нужны и формулы, напишите, доделаю.

Я позволил себе несколько расширить задачу: Вы нажимаете кнопку и открывается окно проводника, в нем вы выбираете файл для сравнения (Прайс от поставщика), а дальше все как Вы просили. Правда ничего не удаляется, а лишь помечается словами - "повтор", "добавили", "удалили". Прайс 2 остается в первозданном виде, а в Прайс 1 все что новое добавляется с пометкой "добавили", а все что уже было, остается с пометкой "повтор", а что не найдено в сравниваемом прайсе (Прайс 2) помечается "удалили". Если нужно можно на кнопку №2 завести действие "Очистить".

Удачи.
Путей к вершине - множество. Этот один из многих!

labuh

Цитата: GWolf от 04.12.2009, 16:44
Добрый вечер!

Хочу предложить один из вариантов решения Вашей задачи. Требуется конечно кое какая доработка, так например не копируются формулы. Но идея готова. Если нужны и формулы, напишите, доделаю.

Я позволил себе несколько расширить задачу: Вы нажимаете кнопку и открывается окно проводника, в нем вы выбираете файл для сравнения (Прайс от поставщика), а дальше все как Вы просили. Правда ничего не удаляется, а лишь помечается словами - "повтор", "добавили", "удалили". Прайс 2 остается в первозданном виде, а в Прайс 1 все что новое добавляется с пометкой "добавили", а все что уже было, остается с пометкой "повтор", а что не найдено в сравниваемом прайсе (Прайс 2) помечается "удалили". Если нужно можно на кнопку №2 завести действие "Очистить".

Удачи.

Супер. Мне понравилось. Работает быстро. Спасибо. Теперь вопрос:
1. Мы рассматривали вариант когда новые строки из Прайс2 добавляются в конец списка. Стоило мне в Прайс2 добавить новые строки в перемешку к старым, как возникла табличка "Режим в разработке"
2. Когда новые строки из Прайс2 добавляются в Прайс1, то ячека получается с зеленым треугольничком. Приходится в ручную преобразовывать в число.

labuh

#25
Разобрался - "Режим в разработке" - это когда не произошло изменений в Прайс2

labuh

Цитата: GWolf от 04.12.2009, 16:44
Добрый вечер!

Хочу предложить один из вариантов решения Вашей задачи. Требуется конечно кое какая доработка, так например не копируются формулы. Но идея готова. Если нужны и формулы, напишите, доделаю.

Я позволил себе несколько расширить задачу: Вы нажимаете кнопку и открывается окно проводника, в нем вы выбираете файл для сравнения (Прайс от поставщика), а дальше все как Вы просили. Правда ничего не удаляется, а лишь помечается словами - "повтор", "добавили", "удалили". Прайс 2 остается в первозданном виде, а в Прайс 1 все что новое добавляется с пометкой "добавили", а все что уже было, остается с пометкой "повтор", а что не найдено в сравниваемом прайсе (Прайс 2) помечается "удалили". Если нужно можно на кнопку №2 завести действие "Очистить".

Удачи.

1. формулы нужны

2. а как сделать, чтобы текст "повтор, удалили, добавили" появлялся только в одной колонке, а не заполнял каждый раз новую и новую?

kzld

Цитата: iron priest от 03.12.2009, 13:19
без 100 граммов примера не разберешься :)
Пример приложен

labuh

Цитата: kzld от 05.12.2009, 07:46
Цитата: iron priest от 03.12.2009, 13:19
без 100 граммов примера не разберешься :)
Пример приложен
Точно без 100 граммов не разберешься. :D
К сожалению ничего не понял из Вашего примера. Имеет ли этот пример отношение к моему вопросу я пока не разобрался.
Вот в примере GWolf все просто и понятно.

GWolf

Уважаемый labuh! Доброго дня!

К сожалению, с пятницы (вечер) по понедельник (утро) я не могу просматривать форум, - нет доступа в Inet. Поэтому прошу прощения за молчание. Итак:

Цитировать1. Мы рассматривали вариант когда новые строки из Прайс2 добавляются в конец списка. Стоило мне в Прайс2 добавить новые строки в перемешку к старым, как возникла табличка "Режим в разработке"

Это сообщение выдается программой, если число строк в Прайс 1 = число строк в Прайс 2. Этот недостаток постараюсь доработать в ближайшее время.

Цитировать2. Когда новые строки из Прайс2 добавляются в Прайс1, то ячека получается с зеленым треугольничком. Приходится в ручную преобразовывать в число.
и
Цитировать1. формулы нужны
Будет сделано в следующей версии кода.


Цитировать2. а как сделать, чтобы текст "повтор, удалили, добавили" появлялся только в одной колонке, а не заполнял каждый раз новую и новую?

Перед запуском очистить эту колонку (удалите ее). Автоматическое удаление будет реализовано в следующей версии кода.
Путей к вершине - множество. Этот один из многих!