Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 След.
Отзывы о работодателях и исполнителях, Посмотрите, прежде чем взять/предложить работу
 
День добрый! хочу поделиться результатом выполненным skais675 по моей просьбе! Сводная таблица с многогранным функционалом освободившего меня от массы рутинной работы. Результат общая База данных сформированная от трех поставщиков ,с сортировкой по наличию и многих других критериев, работа требующая профессиональных знаний макросов. Работой доволен. Всем рекомендую.
Изменено: white-hot - 19.06.2017 14:03:43
Макрос для обновления базы данных, Добавление новых данных в базу
 
тема закрыта
Изменено: white-hot - 16.02.2017 00:39:17
Макрос для обновления базы данных, Добавление новых данных в базу
 
Цитата
Sanja написал:
понравилось
так и есть)
Макрос для обновления базы данных, Добавление новых данных в базу
 
Цитата
skais675 написал:
все решается
про впр если вы про сравнение..,я сравниваю PHP скриптом,ВПР  я просто не знаю надо изучать..
Макрос для обновления базы данных, Добавление новых данных в базу
 
Цитата
skais675 написал:
сколько строк?
сколько наименований столько и строк 1500 примерно, если вы так понял в теме ,вопрос немного не по теме - как вы сравниваете прайсы,то что у вас недостает?
Макрос для обновления базы данных, Добавление новых данных в базу
 
Цитата
skais675 написал:
Как раз сводной все сортируется и выстраивается
так и придется,упустили теперь 1500 наименований обновлений..
Макрос для обновления базы данных, Добавление новых данных в базу
 
Цитата
TheBestOfTheBest написал:
А по-моему есть, и в переписке по ссылкам тоже на это обращено внимание.Вообще-то формулировка д.б. ровно наоборот: в столбце не должно быть ... И пользователю придется это обеспечивать, иначе Вам, как постановщику задачи, придется формулировать другое правило: как в таких случаях поступать программе.
На вскидку, это можно решить используя SQL-запрос (если будет обеспечена уникальность), но дешево это не будет по причине "неудачного" ТЗ. Если подход устраивает, пишите в личку подробности.
да есть товар с уценкой,соответственно уникальности по столбцу I нет,как и решение SQL-запросом(
Изменено: white-hot - 31.01.2017 12:32:36
Макрос для обновления базы данных, Добавление новых данных в базу
 
Цитата
skais675 написал:
Странное какое-то видение построения базы.
Уж лучше добавлять новые данные постоянно в конец источника. На основе источника построить отсортированную таблицу по наименованиям с учетом даты поступления - для учета всех цен. Как-то так. А вообще БД какая-то непонятная, если товар заканчивается, то что происходит - разве не нужно удалять позицию из источника или как-то отмечать. А то как-то все на кучу валится - иди разберись потом. Лучше бы объяснили цель всего этого, а не то как Вы думаете. Типа магазин должен иметь прайс, с постоянно актуальными ценнами, есть переодические поступления или обновления текущих цен, есть уход каких-то позиций и т.д.
цель вроде объяснил куда больше?,вы все правильно поняли,заканчивающие позиции конечно удаляются,в конец конечно можно но смысл теряется ,сортировка товара по разделам уходит на нет(отсутствует последовательность) и со вставкой цен надо будет поиграться,вашим методом бесспорно все решается, но это долго,поэтому и родилось это неудачное ТЗ)
Изменено: white-hot - 31.01.2017 12:36:43
Макрос для обновления базы данных, Добавление новых данных в базу
 
по моему в столбце I нет одинаковых,если есть то это товар с уценкой как вариант и цена разная,в строке да очень много - это номер производителя совпадает с оригиналом или аналогом
Макрос для обновления базы данных, Добавление новых данных в базу
 
заявка открыта
Макрос для обновления базы данных, Добавление новых данных в базу
 
Рядовая тема:

1.осноновная база значения диапазона A-Q (строка 17 столбцов)
2.обновленные данные - значения диапазона V - AL (строка 17 столбцов), которые необходимо перенести в основную базу
3.задумка следующая:местом для размещения в БД является вновь образовавшаяся макросом строка ,идентификатором для которого является значение столбца I,артикул. Под строку в которой находится данный артикул, макрос готовит новую строку для обновленных данных сдвигая вниз основные.
4.идентификатором-значением для переносимых данных является этот же артикул столбца I,который находится в столбце U,указывая собой как место для вставки обновленных данных так и сами переносимые данные находящиеся справа от него значения диапозона V - AL.

Для того чтобы стало понятней озвучу задачу.

Торговые отношения поставщик-покупатель:

Задача для которой необходим выше озвученный инструмент:
поступление нового товара который мы должны занести в свою БД в той же последовательности наименований что и у поставщика,это необходимо для того чтобы потом обновить у себя цены лишь только ctrl+c и ctrl+v ,а не проставлять по позициям..,соответственно вставка обновленных данных в конец БД никак не подходит

p.s. Если вы видите иной путь реализации то пожалуйста предложите!

немного обсуждений данной темы здесь:http://www.planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=1&TID=86299&TITLE_SEO=86299-makros-...http://www.planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=1&TID=86299&TITLE_SEO=86299-makros-...
Изменено: white-hot - 29.01.2017 20:07:10
Макрос для обновления базы данных, Добавление новых данных в базу
 
Для того чтобы стало понятно озвучу цели и задачи по двум темам сразу и свое желание видеть инструмент для их осуществления,если вы видите иной путь реализации то пожалуйста предложите!

Торговые отношения поставщик-покупатель:
1.периодический вывод,удаление позиций из прайса , в связи его отсутствия на складе поставщика,
инструмент для которого и был инициирован мною данный макрос  http://www.planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=1&TID=86083   ,огромное спасибо за помощь, сохраняя закончившиеся наименования мы выводим их на другой файл,ведь настанет то время когда они возможно снова появятся на складе
2.инструмент который необходим для решения задачи в этой теме:
поступление нового товара который мы должны занести в свою БД в той же последовательности наименований что и у поставщика,это необходимо для того чтобы потом обновить у себя цены лишь только ctrl+c и ctrl+v ,а не проставлять по позициям..,соответственно вставка обновленных данных в конец БД никак не подходит
Цитата
*  Sanja написал: что значит "заносим"?
Цитата
3.задумка проста заносим данные в основную базу,идентификатором в которой выступает артикул столбца I
под "заносим" я имею ввиду что нам нужно где-то проставить идентификатор значение поиска столбца "I",в нашем случае это столбец "U"
Цитата
* Что "под", что "над" одинаково неприяно и не правильно
А если добавлять новые данные в конец базы? По всем учебникам именно так базы обновляются

вы имеете ввиду с точки зрения (технической) написания макроса  не правильно? или технически это возможно?
ведение базы тогда правильное для меня,когда для ее обновления затрачу максимально мизерное время...,если озвученные вами инструменты решат мои проблемы то с радостью вставлю их в конец БД,гипотетически мысли вслух: id я проставлю в легкую, протянув значения вниз ,но у меня еще есть id раздела который придется проставлять в ручную каждую позицию,предварительно поняв к какому разделу она относится..
Макрос для обновления базы данных, Добавление новых данных в базу
 
открыл файл близко  ,только задача в корне другая,макрос удаляет данные артикула идентификатора из базы данных и вставляет обновленные,а нужно данные артикула идентификатора не удалять а вставлять под него(под строку с ним) или над ним (как легче сделать),строку с обновленными данными,суть старой темы с новой одинакова лишь в одном обновлении базы данных,в первом случае мы вытаскивая ненужные данные сохраняем их на другой лист, поскольку они могут понадобиться,а здесь во втором случае мы добавляем новые позиции в базу
Изменено: white-hot - 03.01.2017 04:13:42
Макрос для обновления базы данных, Добавление новых данных в базу
 
Тема избитая,но макроса не встречал,самостоятельно затрудняюсь,кого не затруднит отзовитесь..,

1.осноновная база диапазон A-Q
2.обновленные данные диапазон V - AL, которые необходимо внести в основную базу
3.задумка проста заносим данные в основную базу,идентификатором в которой выступает артикул столбца I
4.идентификатор прописан в столбце U справа которому соответствуют переносимые обновленные данные в этой же строке диапазон V - AL
Макрос для переноса данных по артикулам построчно на другой лист
 
Код
Sub Макрос1()
Dim LastRow As Long, i As Long, j As Long, x As Long, ArrMain(), ArrArtikul(), ArrNew, Artikul As String, ArrArhiv
    t = Timer
    LastRow = Cells(Rows.Count, 19).End(xlUp).Row
    ArrArtikul = Range(Cells(2, 19), Cells(LastRow, 19)).Value
    LastRow = Cells(Rows.Count, 1).End(xlUp).Row
    ArrMain = Range(Cells(2, 1), Cells(LastRow, 18)).Value
    ReDim ArrArhiv(1 To UBound(ArrArtikul), 1 To 17)
    For j = 1 To UBound(ArrArtikul)
        Artikul = ArrArtikul(j, 1)
        For i = 1 To UBound(ArrMain)
            If ArrMain(i, 9) = Artikul Then
                x = x + 1
                ArrMain(i, 18) = True
                ArrArhiv(x, 1) = ArrMain(i, 1)
                ArrArhiv(x, 2) = ArrMain(i, 2)
                ArrArhiv(x, 3) = ArrMain(i, 3)
                ArrArhiv(x, 4) = ArrMain(i, 4)
                ArrArhiv(x, 5) = ArrMain(i, 5)
                ArrArhiv(x, 6) = ArrMain(i, 6)
                ArrArhiv(x, 7) = ArrMain(i, 7)
                ArrArhiv(x, 8) = ArrMain(i, 8)
                ArrArhiv(x, 9) = ArrMain(i, 9)
                ArrArhiv(x, 10) = ArrMain(i, 10)
                ArrArhiv(x, 11) = ArrMain(i, 11)
                ArrArhiv(x, 12) = ArrMain(i, 12)
                ArrArhiv(x, 13) = ArrMain(i, 13)
                ArrArhiv(x, 14) = ArrMain(i, 14)
                ArrArhiv(x, 15) = ArrMain(i, 15)
                ArrArhiv(x, 16) = ArrMain(i, 16)
                ArrArhiv(x, 17) = ArrMain(i, 17)
            End If
        Next
    Next
    ReDim ArrNew(1 To UBound(ArrMain), 1 To 17)
    For i = 1 To UBound(ArrMain)
        If ArrMain(i, 18) <> True Then
            x = x + 1
            ArrMain(i, 18) = True
            ArrNew(x, 1) = ArrMain(i, 1)
            ArrNew(x, 2) = ArrMain(i, 2)
            ArrNew(x, 3) = ArrMain(i, 3)
            ArrNew(x, 4) = ArrMain(i, 4)
            ArrNew(x, 5) = ArrMain(i, 5)
            ArrNew(x, 6) = ArrMain(i, 6)
            ArrNew(x, 7) = ArrMain(i, 7)
            ArrNew(x, 8) = ArrMain(i, 8)
            ArrNew(x, 9) = ArrMain(i, 9)
            ArrNew(x, 10) = ArrMain(i, 10)
            ArrNew(x, 11) = ArrMain(i, 11)
            ArrNew(x, 12) = ArrMain(i, 12)
            ArrNew(x, 13) = ArrMain(i, 13)
            ArrNew(x, 14) = ArrMain(i, 14)
            ArrNew(x, 15) = ArrMain(i, 15)
            ArrNew(x, 16) = ArrMain(i, 16)
            ArrNew(x, 17) = ArrMain(i, 17)
        End If
    Next
    Range(Cells(2, 1), Cells(LastRow + 1, 17)).ClearContents
    Cells(2, 1).Resize(x, 17).Value = ArrNew
    With Sheets("Архив БД")
        LastRow = .Cells(Rows.Count, 1).End(xlUp).Row
        Range(.Cells(2, 1), .Cells(LastRow + 1, 17)).ClearContents
        .Cells(2, 1).Resize(UBound(ArrArhiv), 17).Value = ArrArhiv
    End With
    Debug.Print Timer - t
End Sub

Макрос для переноса данных по артикулам построчно на другой лист
 
да все тоже самое, вставил массив данных от A до Q, в S портянку арт. из 711 штук,с тремя артикулами же работает все
Изменено: white-hot - 31.12.2016 00:54:05
Макрос для переноса данных по артикулам построчно на другой лист
 
да винда дебаг надо нажать ок,  
ArrNew(x, 1) = ArrMain(i, 1)
Изменено: white-hot - 31.12.2016 00:47:11
Макрос для переноса данных по артикулам построчно на другой лист
 
я вставил все данные и выскочило окошко на какой сложно сказать..,а так с тремя арт. да все без проблем..
Изменено: white-hot - 31.12.2016 00:42:06
Макрос для переноса данных по артикулам построчно на другой лист
 
Sanja,ошибка 457
Юрий М,ошибка 9
Макрос для переноса данных по артикулам построчно на другой лист
 
Юрий М,да
Макрос для переноса данных по артикулам построчно на другой лист
 
нет ориентир столбец I,идентификатор позиции его данные - артикул
Макрос для переноса данных по артикулам построчно на другой лист
 
Юрий М,он может встретиться в другом столбце одноименной строки,и может быть дубль да..
Макрос для переноса данных по артикулам построчно на другой лист
 
Sanja,да,только один этот для переноса..,взял отсюда и вставил БД..
понял несаша),только ответа на мой вопрос от 30 Дек 2016 22:40:38 не последовало ни где...,?
Изменено: white-hot - 30.12.2016 23:23:28
Макрос для переноса данных по артикулам построчно на другой лист
 
Юрий М,да верно три строки поскольку там их три в базе - столбец I,артикул из столбца S
Изменено: white-hot - 30.12.2016 23:14:02
Макрос для переноса данных по артикулам построчно на другой лист
 
Юрий М,наверно ,но у каждого свои сравнения ,я сравнил с ручным изменением))
Макрос для переноса данных по артикулам построчно на другой лист
 
в платный я хотел другую тему..,или вы из-за времени? меня 33 минуты устраивает,получается можно быстрее?, и я жду ответ Александра..
Изменено: white-hot - 30.12.2016 22:58:45
Макрос для переноса данных по артикулам построчно на другой лист
 
создать новую тему несложно..,помочь многим согласен,но только характер обращения особо не будет отличаться от просьбы в этой ветке,времени на изучение VBA реально нет,а по изучению файл с БД поменяется 123 раза,указание на философию без осуждения понимаю,переходя к конкретике озвучьте где выложить файл в общем доступе или в личку?,готов оплатить написание скрипта..

да 33 минуты..
Изменено: white-hot - 30.12.2016 22:42:56
Макрос для переноса данных по артикулам построчно на другой лист
 
Саш, круто 711 строк из 17 столбцов перенеслись за 33:55 мин,засек..)
Саш,а с обратным процессом поможете,здесь обновляя выдергивали данные,а мне нужно еще вставить...,кидану файл с идеей?
Изменено: white-hot - 30.12.2016 22:22:59
Макрос для переноса данных по артикулам построчно на другой лист
 
да наверняка есть не уникальные..
Макрос для переноса данных по артикулам построчно на другой лист
 
Код
dicArt.Add arrBaza(I, 9), I

что-то здесь надо поменять..
а число 9 на что указывает? номер столбца колонки I?

на эту строку указывается если нажимаешь дебаг
Изменено: white-hot - 26.12.2016 01:22:21
Страницы: 1 2 След.
Наверх