Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 717 След.
Как избежать смещения таблицы при добавлении строк макросом?
 
Даёте изначально имена первым ячейкам (или первым строкам) в каждой таблице. Макрос учите использовать эти имена.
Возможно ли суммирование ячеек, содержащих SUMM () или СУММ()?
 
Цитата
Les555 написал:
но только если согласиться использовать макросы. А если нет ?
- тогда кладёте код в надстройку.
ВПР ищет первое значение. Нужно нескольких значений в строчку
 
UDF
https://www.planetaexcel.ru/forum/index.php?PAGE_NAME=read&FID=2&TID=10&TITLE_SEO=10
Добавление массива в коллекцию.
 
Цитата
Tipok написал:
Спасибо за идею.
т.е.
Цитата
Hugo написал:
m(счётчик, доход)
не прошло... :)
Добавление массива в коллекцию.
 
Цитата
Ігор Гончаренко написал:
когда 6-е поле - это доход
очень легко вместо х(6) где в расчетах в запарке сунуть х(7)
Ну можно ведь писать m(счётчик, доход) :)
Изменено: Hugo - 1 Дек 2018 23:46:30
Добавление массива в коллекцию.
 
А что, Вы не запомните, что на первой позиции слово, а на второй число? Зачем вообще этот Private Type?
Код
    Dim x As Integer
    Dim col As New Collection
    ReDim m(1 To 5, 1 To 2)
    For x = 1 To 5 Step 1
        m(x, 1) = "Проверка"
        m(x, 2) = x
    Next
    col.Add m
    Erase m
Макрос на дублирование строки без значений
 
Данные копирует, не поспоришь... Но данные никуда не вставляет! :)
Формирование одного документа из множества исходных файлов с помощью макроса
 
Где-то в начале кода присвойте переменной ссылку на активную книгу:
Код
set wb=activeworkbook

и далее всюду вместо Windows("Исходник №1.xlsx") пишите wb
Ну и ещё конечно полезно в самом начале объявить
Код
Dim wb As Workbook
или
Dim wb as Object

но это уже следующий этап познания :)
Ну и далее ликвидируются все селекты и активации, код становится раз в 5 короче и читабельнее. И на столько же быстрее работающий, хотя на таких объёмах это роли не играет.
Изменено: Hugo - 29 Ноя 2018 22:00:39
Доработать макрос сравнения нескольких столбцов с несколькими столбцами., Сравнение столбцов
 
Не, 11-ый не буду :)
На словах - массивы берёте с 2-ой строки, а выгружаете в 1-ую - зачем???? Потому и мимо, потому и #Н/Д
Кстати, про Range и точку - как-то раз (уже сильно позже написания кода) как раз столкнулся  с тем, что как раз эта точка вызывала ошибку.
Хотя не факт что этот код тут появился в первоначальном виде, уже столько времени прошло...
Изменено: Hugo - 29 Ноя 2018 19:09:40
Доработать макрос сравнения нескольких столбцов с несколькими столбцами., Сравнение столбцов
 
Код
Option Explicit

'Макросом -
'1.два диапазона в два массива
'2.создание массива для результатов
'3.один перебор 300 значений массива в словарь
'4.100 000 проверок массива на наличие в словаре и заполнение единицами массива результата
'5.выгрузка результатов

Sub compare()
Dim a, b, c, d, e, iLastrow As Long, i As Long
Dim tm: tm = Timer
'1.
With Sheet2 'используется кодовое имя
iLastrow = .Cells(Rows.Count, 1).End(xlUp).Row
b = Range(.[A1], .Range("b" & iLastrow)).Value
'd = Range(.[B1], .Range("B" & iLastrow)).Value

End With

With Sheet1 'используется кодовое имя
iLastrow = .Cells(Rows.Count, 1).End(xlUp).Row
a = Range(.[A1], .Range("b" & iLastrow)).Value
'e = Range(.[B1], .Range("B" & iLastrow)).Value

End With

'2.
ReDim c(1 To UBound(a), 1 To 1)

'3.
With CreateObject("Scripting.Dictionary")
    For i = 1 To UBound(b)
            .Item(b(i, 1) & "|" & b(i, 2)) = CStr(1)
    Next

'4.
    For i = 1 To UBound(a)
      If .exists(a(i, 1) & "|" & a(i, 2)) Then c(i, 1) = 1
    Next
End With

'5.
With Sheet1 'используется кодовое имя
Range(.[C1], .Range("C" & iLastrow)).Value = c
End With

MsgBox Timer - tm 'окно с таймером, годная тема
End Sub

наверное уже в десятый раз этот макрос изменяю, хотя вроде всё подробно расписал в шапке.
Доработать макрос сравнения нескольких столбцов с несколькими столбцами., Сравнение столбцов
 
Цитата
chep-kep написал:
Есть макрос который делает сравнение по двум столбцам
- и где этот макрос?
В существующем видим
Код
Range(.[A1], .Range("A" & iLastrow)).Value
- тут никак не помещаются 2 столбца.
Ошибка type mismatch при удалении всех значений в ячейках
 
Не в модуле листа можно использовать вызов этого макроса.
Только нужно сперва убрать Private.
Изменено: Hugo - 29 Ноя 2018 12:26:01
Ошибка type mismatch при удалении всех значений в ячейках
 
Borrusale, Sub УдаленЗначенияЯчейк() запросто.
И кроме того - Вы не указали в каком листе этот макрос.
P.S. И ещё - я написал
Цитата
код например в модуле листа НЕ "Лист1"
, читайте тщательнее :)
Изменено: Hugo - 29 Ноя 2018 12:15:36
Ошибка type mismatch при удалении всех значений в ячейках
 
Без проверки в файле вижу что ошибка будет если код например в модуле листа НЕ "Лист1", и если "Лист1" не активен.
Отменить автозамену на дату числа с точкой
 
Цитата
rafa_el написал:
При выгрузке данных в формате csv ексель по собственной инициативе меняет число с точкой на дату
- вот убей меня не вижу такого.
Цитата
kolco-zolotoe-t130613887;;;золото;585;;18.5;;9119843226;кольцо;
- нет тут никакой даты...
Сгруппировать инвентарные номера
 
Цитата
Anton2000 написал:
В наш отдел таком виде дали чтобы мы все проверили
- а Вы решаете какую-то совсем другую задачу... Проще ведь проверить! Знать бы ещё что именно... :)
Проблема с подтягиванием данных из внешних таблиц
 
Ну значит нужно кому-то его открывать, сохранять, закрывать. Или держать открытым.
И чтоб пересчёт был на автомате - а это бывает сбрасывается, живёт своей жизнью...
Проблема с подтягиванием данных из внешних таблиц
 
Цитата
Равик написал:
В промежуточную таблицу подтягиваются данные
кем, когда?
Сохранение строк отдельными файлами
 
Попробуйте
Код
union((ws.Rows(1), ws.Rows(i)).Copy
Поиск нескольких значений
 
Я бы сказал что сразу - никак :(
А сюдя по описанию - вполне опять справится ВПР() :)
Закрыть с сохранением все копии приложения Excel
 
Владимир, у меня скрипт закрывал только один экземпляр пока не было каталога "С:\Temp\"
Ну вроде понятно - не получилось сохранить, получили ошибку, закрылись.
Создал каталог чтоб отрабатывало как задумано - вообще перестал закрывать хоть что-то... Вот тут я не понял :(
Объединение строк Excel с одинаковыми значениями ячеек
 
Inexsu,  столбцы P и L не совпадают с заказанным. Хотя к P и в образце есть вопрос... Почему так? :)
Объединение строк Excel с одинаковыми значениями ячеек
 
Цитата
innessa2017 написал:
Всего листов 27 по 450 000 строк в каждой
Ну а если говорить про пример - так там и объединение "хромает", не всюду логично.
Объединение строк Excel с одинаковыми значениями ячеек
 
Михаил, там 27 отдельных листов, их не отсортировать сортировкой...
Объединение строк Excel с одинаковыми значениями ячеек
 
Цитата
innessa2017 написал:
Компании могут быть раскиданы хаотично по листу
- а в примере этого нет...
Впрочем как достичь порядка я на кибере рассказал, правда не видя примеров.
А вот зачем эти объединения - и впрямь не ясно, ну не печатать ведь эти 27*45000 будете.
Хотя если на листе данные уже упорядочены - можно написать макрос только для этого объединения, но работать будет долго.
Объединение строк Excel с одинаковыми значениями ячеек
 
На этом сайте нет проблем редактировать свои прошлые сообщения, это не кибер... :)
Изменено: Hugo - 18 Ноя 2018 15:02:07
Подстановка из другой книги фамилии по ID
 
Добрый день.
При таком положении легко через ВПР() не работало бы, но хотя возможно, используя помощь других формул.
Ну а так разницы нет - одна книга или разные, синтаксис одинаков. Аргументы только выглядят иначе, но для мастера разницы нет.
Назначение макроса только на те объекты, которые находятся внутри конкретного диапазона.
 
Хотел глянуть - антивирус не даёт, хоть макросы по умолчанию отключены...
Сделайте версию с макросом не на открытие файла - тогда может завтра гляну.
Ну или здесь код покажите.
Как прописать формулу с несколькими "если" и несколькими "аргументами"?, Когда "если" и "аргументов" больше 3-х, то excel "говорит" об этом и не даёт создать подобную формулу
 
Я в файле не проверял, может там пороги и не так работают. Ну подправьте свою расчётку, или сделайте спецвариант для этой функции.
Как прописать формулу с несколькими "если" и несколькими "аргументами"?, Когда "если" и "аргументов" больше 3-х, то excel "говорит" об этом и не даёт создать подобную формулу
 
Есть стандарная формула для таких вычислений без всяких если и многих аргументов - но это не подходит к описанию вопроса. Что делать? :)
P.S. Хотя перечитал - вроде как не противоречит...
Попрообуйте так - т.к. файла нет, то не проверял:
Код
=VLOOKUP(D21;$A$12:$B$16;2)
Изменено: Hugo - 15 Ноя 2018 10:06:07
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 717 След.
Наверх