Все выпуски  

gling>> Re: Автоматическое создание новых строк и вставка туда данных из одной строки


Профессиональные приемы работы в Microsoft Excel

Выпуск 15
от 2014-04-18

Подписчиков: 5840

Рассылка сайта "Профессиональные приемы работы в Microsoft Excel"

Основные разделы сайта
Статьи
Форум

Новости сайта в формате RSS
Новые сообщения форума в формате RSS
Читать в Яндекс.Ленте

Порекомендуйте нашу рассылку друзьям

Обратная связь
Поддержка
(форум рассылки)

Наши рассылки:

Рассылки Subscribe.Ru
Православные:
Ежедневные библейские чтения
Смоленский календарь
Для выздоравливающих алкоголиков и наркоманов
Книга "День за днем"
Книга "24 часа в сутки"
Ежедневные размышления анонимного алкоголика
Самообразование:
"Профессиональные приемы работы в Microsoft Excel"

Наши сайты

Профессиональные приемы работы в Microsoft Excel
Excel от новичка до эксперта

bonifatiy.narod.ru
В помощь выздоравливающим алкоголикам и наркоманам

Собор Смоленских святых. Жития, иконы, календарь памятных дат Смоленской епархии.

StudentTools.Narod.Ru Для тех, кто любит учиться

Наши друзья

VBAtips.ru -
подсказки и решения на VBA

wordexpert.ru
Профессиональная работа с текстом

planetaexcel.ru
Когда заешь - все просто

Новые сообщения форума "Профессиональные приемы работы в Microsoft Excel"



gling>> Re: Автоматическое создание новых строк и вставка туда данных из одной строки
2014-04-06 22:28 http://forum.msexcel.ru/index.php?action=profile;u=
Здравствуйте. Посмотрите  вроде то что вам и нужно. http://www.planetaexcel.ru/techniques/3/55/ Немного добавил в макрос, получился Ваш вариант.


Aqil_f>> Как мне обратиться к форме, указав вместо её имени переменную, содержащую её имя
2014-04-07 12:20 http://forum.msexcel.ru/index.php?action=profile;u=
Как мне обратиться к форме, указав вместо её имени переменную, содержащую её имя?

cheshiki1>> Re: Как мне обратиться к форме, указав вместо её имени переменную, содержащую её имя
2014-04-07 14:00 http://forum.msexcel.ru/index.php?action=profile;u=
Sub proba()
Dim s As Object
Set s = Форма1
s.Show
End Sub


AlWin>> Re: ComboBox и DropDown не запоминают выбранные значения после закрытия книги
2014-04-07 16:29 http://forum.msexcel.ru/index.php?action=profile;u=
Какой ответ на этот вопрос правильный?:
1. Непонятно, что спросил
2. Проблема пока не имеет решения
3. Решение есть, но стоит денег

Вячеслав Опольский>> Re: Автоматическое создание новых строк и вставка туда данных из одной строки
2014-04-07 19:29 http://forum.msexcel.ru/index.php?action=profile;u=
Спасибо большое, ваш макрос сработал. То что надо!

Axel Dlagor>> Re: Расчет времени затраченного на работу бригады с учетом обедов
2014-04-08 15:42 http://forum.msexcel.ru/index.php?action=profile;u=
Большое человеческое спасибо! Душевный благодар! Тож использовал простую формулу - а эта даже обеды вычитает!

Наталья Исаева>> несколько условий для формулы ЕСЛИ - нужна помощь
2014-04-10 10:34 http://forum.msexcel.ru/index.php?action=profile;u=
никак не могу разобраться с формулой ЕСЛИ с заданием нескольких условий, прошу помочь. Вот задача.
              N – 100%
      N +0,1 – 90%
      N +0,2 – 80%
      N +0,3 – 75%
      N + 0,4> – 0%
где N=1,1


Alex77>> Определение новых клиентов в клиентской базе (Excel 2007)
2014-04-10 12:13 http://forum.msexcel.ru/index.php?action=profile;u=
Большая просьба откликнуться!!! есть база данных по клиентам компании, с объемами продаж по-месячно. Как можно в каждом месяце выявить новых клиентов, т.е. тех кто брал товар впервые. Пример базы прилагаю. Спасибо!

GWolf>> Re: ComboBox и DropDown не запоминают выбранные значения после закрытия книги
2014-04-10 14:22 http://forum.msexcel.ru/index.php?action=profile;u=
... После выбора элементов списка в каждом меню запоминаем изменения в книге и закрываем файл. После повторного открытия документа видим одну и ту же картину:
в dropDown - "item1", в comboBox – "". ...

Доброго дня!
Результаты выбора пользователем значений и в dropDown и в comboBox нужно сохранить в ячейки листа.

cheshiki1>> Re: несколько условий для формулы ЕСЛИ - нужна помощь
2014-04-10 23:52 http://forum.msexcel.ru/index.php?action=profile;u=
честно - не понял условия. может на словах опишите.

Наталья Бублик>> Срочная задача,собрать ряд чисел в диапазон
2014-04-11 11:40 http://forum.msexcel.ru/index.php?action=profile;u=
Добрый день.
Есть задача,например есть ряд чисел 600063,   600064,   600065,   600066,   600067,   600068,   600069,   600070,   600071,   600072
Мне нужно собрать эти числа в диапазон 600063-600069, 600070-600072
или 600063-600072
С помощью какого макроса или какой функции это можно сделать,а главное как?
СПасибо

Андрей Ковальчук>> Re: Определение новых клиентов в клиентской базе (Excel 2007)
2014-04-11 11:54 http://forum.msexcel.ru/index.php?action=profile;u=
Если делать в лоб по этим данным, то для марта в ячейке J2 пишем формулу =И(СЧЁТЗ($B2:D2)=0;E2>0)
ИСТИНА даст новых клиентов. Для последующих месяцев изменяем диапазоны.

Но я бы переделал структуру хранения данных к таблице вида "дата", "клиент", "объем продаж",  потом с ней можно делать все, что захочешь.

Alex77>> Re: Определение новых клиентов в клиентской базе (Excel 2007)
2014-04-11 12:11 http://forum.msexcel.ru/index.php?action=profile;u=
На самом деле таблица намного больших размеров (более 3000 строк и более 100 столбцов). Не знаю как быть с датой. Можете показать пример структуры?

cheshiki1>> Re: Срочная задача,собрать ряд чисел в диапазон
2014-04-11 14:15 http://forum.msexcel.ru/index.php?action=profile;u=
файл пример приложите.

Наталья Бублик>> Re: Срочная задача,собрать ряд чисел в диапазон
2014-04-11 14:37 http://forum.msexcel.ru/index.php?action=profile;u=
Что то вроде того

cheshiki1>> Re: Срочная задача,собрать ряд чисел в диапазон
2014-04-11 15:53 http://forum.msexcel.ru/index.php?action=profile;u=
Private Sub LiteSort(ByRef x())
Dim v, u&, d&, f%
If IsArray(x) Then
    f = LBound(x): d = f
    For u = f + 1 To UBound(x)
        If x(u) < x(d) Then
            v = x(d): x(d) = x(u): x(u) = v
            u = d - 1: d = u - 1: If u < f Then d = u: u = f
        End If
        d = d + 1
    Next
End If
End Sub


Sub Example()
Dim x()
Dim c As Variant, M&, i&, r&
For Each c In Sheets("Лист2").Range("A1").CurrentRegion
M = M + 1
ReDim Preserve x(1 To M)
x(M) = c.Value
Next
LiteSort x()
r = 1
With Sheets("Лист1")
.Cells(r, 1) = x(1)
For i = 2 To UBound(x)
If x(i - 1) + 1 <> x(i) Then
.Cells(r, 1) = .Cells(r, 1) & " - " & x(i - 1)
r = r + 1
.Cells(r, 1) = x(i)
End If
Next
.Cells(r, 1) = .Cells(r, 1) & " - " & x(i - 1)
End With
End Sub
запускаем макрос "Example" список появляется на лист1

Наталья Бублик>> Re: Срочная задача,собрать ряд чисел в диапазон
2014-04-11 16:06 http://forum.msexcel.ru/index.php?action=profile;u=
Я разобралась,у меня получилось!Спасибо вам большое.
Только если инфа в файле выглядит по другому,он не работает,правильно я понимаю?
Файл приложила

Наталья_А>> Счётеслимн с учётом поиска необходимого диапазона
2014-04-11 17:01 http://forum.msexcel.ru/index.php?action=profile;u=
Добрый день!
Не могу разобраться с формулой, в других формулах данная комбинация срабатывала и формула подсчитывала именно необходимый диапазон (при протягивании формулы по всем итоговым ячейкам).
Суть состоит в том, что необходимо чтобы были подсчитаны ячейки со значением больше 0, отвечающие определённому диапазону каждого клиента. (D столбец)
Формулу прописала вот такую, но она не работает.
Прошу помочь разобраться.

=СЧЁТЕСЛИМН($D$3:$D13;ПОДСТАВИТЬ($D13;"*Итог";"");L$3:L12;">0")

cheshiki1>> Re: Срочная задача,собрать ряд чисел в диапазон
2014-04-11 17:16 http://forum.msexcel.ru/index.php?action=profile;u=
для Чудо2 работать не будет. вы правы. у вас два варианта данных или вы просто интересуетесь?

cheshiki1>> Re: Счётеслимн с учётом поиска необходимого диапазона
2014-04-11 17:34 http://forum.msexcel.ru/index.php?action=profile;u=
=СЧЁТЕСЛИМН($D$3:$D12;ПОДСТАВИТЬ($D13;" Итог";"");K$3:K12;">0")
или
=СУММПРОИЗВ(($D$3:$D12=ПОДСТАВИТЬ($D13;" Итог";""))*(K$3:K12>0))


Наталья_А>> Re: Счётеслимн с учётом поиска необходимого диапазона
2014-04-11 17:43 http://forum.msexcel.ru/index.php?action=profile;u=
=СЧЁТЕСЛИМН($D$3:$D12;ПОДСТАВИТЬ($D13;" Итог";"");K$3:K12;">0")
или
=СУММПРОИЗВ(($D$3:$D12=ПОДСТАВИТЬ($D13;" Итог";""))*(K$3:K12>0))

Спасибо большое))) не иначе как моя не внимательность)))) :) А я уже замудрила......
Спасибо большое за помощь.

boa>> Re: Определение новых клиентов в клиентской базе (Excel 2007)
2014-04-11 19:53 http://forum.msexcel.ru/index.php?action=profile;u=
можно через функцию ПОИСКПОЗ()  - если выдает ошибку(#Н/Д), значит значение встречается впервые
например: =ПОИСКПОЗ(A3215;A$2:A3214;0)

AleksSid>> Re: несколько условий для формулы ЕСЛИ - нужна помощь
2014-04-12 18:40 http://forum.msexcel.ru/index.php?action=profile;u=
Может так?

vladik>> Мода, медиана, стандартное отклонение
2014-04-12 19:07 http://forum.msexcel.ru/index.php?action=profile;u=
Добрый день.
Как посчитать моду, медиану и стандартное отклонение в сводной таблице? К сожалению, ответа на свой вопрос на просторах инета не нашёл.


Александра Будникова>> Как создать лист таблицы в которой значение ячейки импортируется из др. листа
2014-04-13 16:15 http://forum.msexcel.ru/index.php?action=profile;u=
Помогите ,пжста, надо чтобы при заполнении информации заказа № и дата , сумма заказа автоматически попадала в сводную таблицу и сохранялась в ней . Т.е. при следующем заполнении информации с ОБЯЗАТЕЛЬНО другим № , дата и сумма вставлялись в следующую строку

Michael Holbrook>> Сравнение таблиц и выборка данных
2014-04-13 22:24 http://forum.msexcel.ru/index.php?action=profile;u=
Всем привет! Прошу о помощи.

Имеются две таблицы с одинаковой базой данных, но в разном виде! Необходимо опираясь на артикул в одном файле - искать такую же позицию в другом и выводить в нужную ячейку количество.
Минус состоит в том, что главная таблица, из которой изымаются данные постоянно меняется. Какая-то номенклатура меняется, какая-то добавляется, какая-то удаляется. Т.е. ячейки могут перемещаться и менять свой адрес.

Файл "Выборка данных1" - главный, откуда данные изымаются.



iron priest>> Re: Сравнение таблиц и выборка данных
2014-04-13 23:57 http://forum.msexcel.ru/index.php?action=profile;u=
читвйте про ВПР

gling>> Re: Сравнение таблиц и выборка данных
2014-04-14 00:05 http://forum.msexcel.ru/index.php?action=profile;u=
Цитировать
читвйте про ВПР
или СУММЕСЛИ так как в выборке данных2 есть повторяющиеся номенклатуры.

Michael Holbrook>> Re: Сравнение таблиц и выборка данных
2014-04-14 09:27 http://forum.msexcel.ru/index.php?action=profile;u=
Спасибо, ребят! В течение дня буду разбираться.

Еще вопрос. Так как "Выборка данных1" - главный файл и там происходят изменения в виде удаления и добавления номенклатуры, можно ли как-то автоматически производить зеркальную операцию и в файле "Выборка данных2"? Я так полагаю, что удаление строк с одинаковой номенклатурой еще как-то можно реализовать, но вот добавление... Мне же надо добавлять соответствующую номенклатуру в конкретное место...(в конкретную группу и производителя)

Наталья Бублик>> Re: Срочная задача,собрать ряд чисел в диапазон
2014-04-14 11:57 http://forum.msexcel.ru/index.php?action=profile;u=
У меня вариантов очень много,но я не буду наглеть,если поможете со вторым чудом,буду премного благодарна!

cheshiki1>> Re: Срочная задача,собрать ряд чисел в диапазон
2014-04-14 14:37 http://forum.msexcel.ru/index.php?action=profile;u=
Private Sub LiteSort(ByRef x())
Dim v, u&, d&, f%
If IsArray(x) Then
    f = LBound(x): d = f
    For u = f + 1 To UBound(x)
        If x(u) < x(d) Then
            v = x(d): x(d) = x(u): x(u) = v
            u = d - 1: d = u - 1: If u < f Then d = u: u = f
        End If
        d = d + 1
    Next
End If
End Sub


Sub Example1()
Dim x()
Dim c As Variant, M&, i&, r&
Dim Ms As Variant
Ms = Split([A1], ",")
For c = 0 To UBound(Ms)
M = M + 1
ReDim Preserve x(1 To M)
x(M) = --Ms(c)
Next
LiteSort x()
r = 1
With Sheets("Лист1")
.Cells(r, 1) = x(1)
For i = 2 To UBound(x)
If x(i - 1) + 1 <> x(i) Then
.Cells(r, 1) = .Cells(r, 1) & " - " & x(i - 1)
r = r + 1
.Cells(r, 1) = x(i)
End If
Next
.Cells(r, 1) = .Cells(r, 1) & " - " & x(i - 1)
End With
End Sub
значения в ячейке должны заканчиваться числом, а не запятой.

AlWin>> Re: ComboBox и DropDown не запоминают выбранные значения после закрытия книги
2014-04-14 17:43 http://forum.msexcel.ru/index.php?action=profile;u=
И Вам доброго дня, GWolf
Значение для combobox в моем примере сохраняется в именованной ячейке
Range("Оплата") = text
Для dropdown можно в процедуре DDOnAction дописать: Range("A13") = index
Объявить обе переменные как Public и в  Private Sub Workbook_Open() добавить:
index = Range("A13")
text = Range("Оплата")
Вот и все, на что способны мои познания в VBA.
А дальше - туман и очень большой вопрос:
Какой процедурой при открытии документа заставить dropdown и combobox повторить процедуру выбора элементов (если это вообще возможно для ribbon) в соответствии с присвоенными значениями для index и text.
А может я и вообще мыслю не в том направлении...

Wasilic>> Re: Как создать лист таблицы в которой значение ячейки импортируется из др. листа
2014-04-15 00:02 http://forum.msexcel.ru/index.php?action=profile;u=
Так?

GWolf>> Re: Сведение данных из разных листов/файлов в единую таблицу.
2014-04-15 08:15 http://forum.msexcel.ru/index.php?action=profile;u=
... А возможно ли сделать надстройку для сведения данных в один лист из разных книг? К сожаления с макросами не дружу, а нужно свести однотипную информацию с разных книг в одну таблицу без консолидации.
Доброго дня!
Сделать возможно все. Вопрос лишь в использованных ресурсах и полученных результатах.
Что бы решить Вашу задачу, можно пойти двумя путями:
1) вникнуть в код, который я выложил. Прямо скажу: решалась нетривиальная задача, так что для освоения программирования самое то. Мне бы в свое время такую подмогу! Ну и с вопросами: - Милости просим!
2) поставить задачу и за денюжку малую получить решение. (То что вы написали как вопрос постановкой задачи не является!)

Ну и общее пожелание: создать под интересующий Вас вопрос отдельную тему!

GWolf>> Re: Не работает макрос. Subscript out of range
2014-04-15 08:24 http://forum.msexcel.ru/index.php?action=profile;u=
Доброго дня!
Предлагаю не готовое решение, а механизм нахождения ошибки:
Заходите в редактор VBA (Alt+F11) и после любой строки макроса ставите Stop. Затем запускаете макрос обычным порядком. До Stop макрос будет работать а на Stop остановится и Вы увидите открывшееся окно редактора и подсвеченный оператор Stop. С этой строки по нажатию F8 Вы сможете построчно проделать весь макрос и посмотреть все значения, которые принимают переменные.
Т.о. Вы сами сможете найти ошибку в работе ЛЮБОГО макроса.
Будут вопросы - обращайтесь.

GWolf>> Re: Перемножение массивов слов
2014-04-15 08:35 http://forum.msexcel.ru/index.php?action=profile;u=
Доброго дня!
Можно!
Пути два:
1) написать макрос;
2) использовать формулы в ячейках вида: = А1 & " " & B1

GWolf>> Re: Мода, медиана, стандартное отклонение
2014-04-15 08:40 http://forum.msexcel.ru/index.php?action=profile;u=
Доброго дня!
Ну, начнем с того, что неплохо бы выложить пример с данными.
Что до того "как", то вот, например: http://statanaliz.info/teoriya-i-praktika/8-srednie/76-moda.html

Антон Ахулин>> Кнопка с выборочным выполнением макросов
2014-04-15 09:59 http://forum.msexcel.ru/index.php?action=profile;u=
Добрый день, форумчане!

Опишу для начала смысл:
Есть несколько макросов(около 15), которые необходимо выполнять последовательно каждый (час/день/неделю), но иногда один/два(а может только первый и последний из десяти) макроса из этой цепочки делать нет необходимости(читай запрещено). Поэтому засунуть код из нескольких макросов в один не представляется возможным.

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

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


Помогите воплотить в жизнь, буду очень признателен.

З.Ы. Опыт создания кнопок и назначения на них макросов имеется. Как к кнопке привязать список с флажками - мозгов не хватает.

Заранее спасибо.

UPD: Может быть это немного кустарно, ...


На сегодня все. До встречи на следующей неделе.


В избранное