Страницы: 1
RSS
Создать столбец на основе данных из других листов
 
Добрый день
Есть несколько книг с пользователями в формате id, name, email

Данные могут повторятся как внутри одной книги, так и между книгами
Условно  запись
Id = 5, name=Ivan, email=ivan(a)ivanov.ru  
может дублироваться и между книгами и внутри любой из них

Можно ли их этого набора данных собрать книгу с уникальными пользователями? Чтобы тот самый Иван с id = 5 оказался в ней только 1 раз. Уникальность можно проверять по id
Изменено: Олеш Кучумов - 08.11.2020 19:03:18
 
Цитата
Олеш Кучумов написал:
Можно ли
можно
Соблюдение правил форума не освобождает от модераторского произвола
 
Цитата
Олеш Кучумов написал:
из других листов
Цитата
Олеш Кучумов написал:
между книгами
какие-то несостыковки
Не бойтесь совершенства. Вам его не достичь.
 
Я имел ввиду в рамках одного файла есть несколько вкладок (книг)

Цитата
buchlotnik написал: можно
Ну слава богу. Натолкните на путь правильный? Хотябы алгоритмически:
1) берем 1ю книгу
2) берем id из первой записи
3) ищем по id в "основной" книге
4) если ничего не нашли - то добавляем эту запись из 1й книги
5) когда прошлись по 1й книге - идем во вторую книгу начинаем с пункта 1)

Как-то так? Или есть способы проще?
И возможно ли это реализовать только формулами?
 
Не бывает несколько книг в одной книге ₽
и без фала примера с исходными данными вам помощь оказалли выше «можно».
выполняется как вариант макросом через коллекцию  
Изменено: Mershik - 08.11.2020 19:36:28
Не бойтесь совершенства. Вам его не достичь.
 
Цитата
Олег написал:
Я имел ввиду
1 -во избежание недоразумений -  не надо пользоваться терминами, если вы их не знаете (книга - это файл целиком, вкладка называется лист - там так и написано по умолчанию)
2 - почитайте правила форума (особенно п. 2.3)
Цитата
Олег написал:
И возможно ли это реализовать только формулами?
с формулами в именованных диапазонах с использованием макрофункций, с дополнительными таблицами и с волатильными функциями - да, можно, но я на такое не подпишусь, поскольку для таких задач есть PQ
Изменено: buchlotnik - 08.11.2020 19:45:18
Соблюдение правил форума не освобождает от модераторского произвола
 
Спасибо большое
Прошу прощения за путаницу - я пытаюсь сейчас жене помочь для ее отчетов.

Вот приложил файл с примером
Есть лист "Главный список". Какой самый простой способ заполнить его уникальными значениями из других листов?
 
Олег,
Код
Sub dsds()
Dim sh As Worksheet, lr As Long, i As Long, col As New Collection
Application.ScreenUpdating = False
Set GS = Worksheets("Главный список")
k = 2
For Each sh In Worksheets
    If sh.Name <> GS.Name Then
    lr = sh.Cells(Rows.Count, 1).End(xlUp).Row
        For i = 2 To lr
            If Application.WorksheetFunction.CountIf(GS.Columns(3), sh.Cells(i, 3)) = 0 Then
                sh.Range(sh.Cells(i, 1), sh.Cells(i, 3)).Copy
                GS.Cells(k, 1).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
                k = k + 1
            End If
        Next i
    End If
Next sh
Application.ScreenUpdating = True
End Sub
Изменено: Mershik - 08.11.2020 20:14:48
Не бойтесь совершенства. Вам его не достичь.
 
Цитата
способ заполнить его уникальными значениями из других листов?
Цикл по всем листам,  кроме Главный список
Для подсчета уникальных использовать два словаря
Выгрузить на лист Главный список
 
Цитата
Mershik написал:
Изменено: Mershik  - 8 ноя 2020 20:14:48
Оох
Спасибо большое - пошел парсить код )

У нее эти операции весь день занимают, я глянул, вроде это все автоматизироваться должно. Яжпрограммист (с) )
 
de
Изменено: buchlotnik - 23.08.2021 18:01:55
Соблюдение правил форума не освобождает от модераторского произвола
Страницы: 1
Наверх