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

Страницы: 1 2 След.
Сумма диапазона по заданному условию и диапазону критериев.
 
Он там не нужен, я же написал, вариация, Ваша версия подходит
Знаю что можно сделать проще, но ведь работает!
Сумма диапазона по заданному условию и диапазону критериев.
 
Цитата
БМВ написал:
Где?
Это пример, а не финишная таблица)
Спасибо вы правы, обычная формула массива.
Знаю что можно сделать проще, но ведь работает!
Сумма диапазона по заданному условию и диапазону критериев.
 
Лох, я! Просидел 2 часа, а всё решилось обычной формулой массива вариация
Код
=СУММ(СУММЕСЛИ(A:A;ТРАНСП(Q5:Q11);M:M))

Простите за флуд(
Знаю что можно сделать проще, но ведь работает!
Сумма диапазона по заданному условию и диапазону критериев.
 
Добрый вечер, знатоки. Подскажите если кто знает.  Как просуммировать диапазон по заданному условию и диапазону критериев.
Все формулы предлагают. Суммировать диапазон, выбирать диапазон условий, а потом по 1-му выбирать критерии.
У меня же диапазон условий меняется и растёт (умная таблица) и также есть отдельно диапазон критериев. который так же меняется и растёт.

Элементарный пример: суммировать количество отработанных часов в праздничные дни. То-есть есть месяц в котором с пн. по пт. работают, но в праздники двойная оплата и нужно точно знать сколько часов отработали в праздник.
Есть отдельно месяц в котором указано в какой день сколько часов и отдельно список адресов которые праздники нужно отдельно сумма всех часов за месяц и сумма отдельно только праздничных.

Но у меня и диапазон критериев и диапазон условий меняется(
Знаю что можно сделать проще, но ведь работает!
Экспорт в .pdf листов по имеющимcя названием
 
sokol92, Огромное спасибо. Всё работает как нужно. Проверять не нужно, проверка происходит ещё у выпадающем списке.
Ещё раз Спасибо.
Знаю что можно сделать проще, но ведь работает!
Экспорт в .pdf листов по имеющимcя названием
 
Добрый день, знатоки! Столкнулся с неприятной проблемой (вроде бы ни чего сложного), но изящного решения не придумаю.

Есть выпадающий список который формируется автоматически при добавлении новых листов. При выборе данных в этом списке их названия накапливаются Накапливание происходит по 2-му варианту. Постоянно выбор может быть разный количество листов может быть разное.
Нужно применить ExportAsFixedFormat, но применить Sheets(Array()).Select не могу так как постоянно изменяется количество и названия листов. Как выбрать именно нужные листы по их названиям которые будут введены к примеру в диапазон A1:A10 и соответственно перенести их в один файл .pdf.
Изменено: Anton9441 - 20.11.2018 12:01:30
Знаю что можно сделать проще, но ведь работает!
Зависание Microsoft Excel, VBA
 
Alemox, СПАСИБО ОГРОМНОЕ. Завтра проверю на рабочем компе, но думаю всё будет окей. На моём ПК полёт нормальный. Зависаний нет. Всё что нужно было сделать почистить макрос. Хоть я так и не понял, что его так тормозило, но вроде бы проблема решена!
Знаю что можно сделать проще, но ведь работает!
Зависание Microsoft Excel, VBA
 
Цитата
Alemox написал:
Пробуйте А вот так зачем?


Дело в том, что в ТекстБокс нужно вывести текст из ячейки и в текстбоксе должна быть именно дата и время. Как Вы заметили из кода этот отчёт заполняют несколько лиц и очень многое построено и зависит от дат. Когда я сделал пустой текстбокс для ввода даты и времени я столкнулся с проблемой неумения верно вводить дату и время людьми которые заполняют этот отчёт. Поэтому я сделал отдельно четыре кнопки которые в заблокированный текстбокс (tb2) будут соответственно добавлять день\час и отнимать их что позволило в реальном времени видеть и выставлять нужное им время и дату. минуты вводит диспетчер самостоятельно в текстбокс который воспринимает только числа. Таким, может не самым разумным, методом я решил проблему криворукости сотрудников. Кстати при обращении к листу по кодовому имени вы уже не используете приставку эта книга, почему?
Изменено: Anton9441 - 03.07.2018 23:37:31
Знаю что можно сделать проще, но ведь работает!
Зависание Microsoft Excel, VBA
 
Цитата
Alemox написал:
А почему закрывается книга? Они одновременно открываются?

Да! Книги открываются одновременно. Спасибо большое за чистку кода. Дело в том, что я не очень хорошо владею VB. Этот код я начинал делать с нулевыми знаниями VB и по мере узнавания языка я его корректировал исходя из этого могли остаться не нужные строки типа "Set sh = Sheets(2)" Работал и я этому был рад) Дело в том что это маленькая часть кода весь код на много больше. Но зависания происходит именно на этом этапе. По поводу книг они открываются при открытии этой книги и если всё в порядке, то сразу же закрываются, а если нет выводятся на передний план. Может вы подскажите "completed" Как видно по коду это не имя листа в натуре это Типа CodeName или как-то так. Дело в том, что листы могут поменять местами и переименовать, а постоянно ловить эту проблему не охота, да и самому может это понадобится. Скажите, как ваш код улучшить, но с обращением по коденейму. Код полноценно работает с именами в натуре.

Знаю что можно сделать проще, но ведь работает!
Зависание Microsoft Excel, VBA
 
Цитата
Doober написал:
Код макроса можно посмотреть?
Конечно же можна! Виснет на активации формы. Зарание, я понимаю что код может и не идеален, но всё работало без сбоев с 1 января. И проблема себя проявляет только после того как на другой лист посмотрю. Активный лист на котором находится кнопка это лист Form вносятся данные на лист completed есть ещё лист Base в котором беруться некоторые данные (данный лист скрыт остальные два нет) проблема остаётся если все скрытые листы открыть. Это для понимания кода.

Private Sub UserForm_Initialize()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
If Form.Cells(9, 6).Value = "" Or Form.Cells(9, 7).Value = "" Then
   MsgBox ("Звіт буде закритий. Не вибрано диспетчера або зміну.")
   ThisWorkbook.Close
End If
completed.Activate
On Error Resume Next
   LastRow = Cells(Rows.Count, 2).End(xlUp).Row
   Cells(LastRow + 1, 34).Value = ""
   Cells(LastRow + 1, 36).Value = ""
   Cells(LastRow + 1, 45).Value = Form.Cells(9, 6).Value
   Cells(LastRow + 1, 46).Value = Form.Cells(9, 7).Value
Set sh = Base
   tb1.Text = Cells(LastRow, 2).Value + 1
   tb2.Text = Cells(LastRow, 3).Value
   tb2.Value = Format(tb2.Value, "dd.mm.yyyy hh:nn")
   Locality.List = sh.Range("A1:A21").Value
   Locality.Text = Cells(LastRow, 8).Value
   Street.Text = Cells(LastRow, 10).Value
   cb3.List = sh.Range("C1:C15").Value
Set sh = Sheets(2)
   tb7.Value = Cells(LastRow, 7).Value
   tb9.Value = Cells(LastRow, 9).Value
End Sub
Изменено: Anton9441 - 03.07.2018 18:01:19
Знаю что можно сделать проще, но ведь работает!
Зависание Microsoft Excel, VBA
 
8-0 Дак что теперь делать? Решения проблемы нет, что ли?
Знаю что можно сделать проще, но ведь работает!
Зависание Microsoft Excel, VBA
 

Добрый день! Проблема такова. Есть макрос (далеко не идеален, так как самоучка и большую часть знаний вынес с этого сайта), стабильно работал уже более полу года, теперь почему-то при активации формы стал загружать ЦП и эксель виснет почти наглухо. Единственное примечание. В книге несколько листов (6 видимых и 12 скрытых) при открытии книги срабатывает макрос, который проводит открытие некоторых книг (анализирует данные, если всё в порядке, то их закрывает) и активирует 1-й лист книги (то есть при открытии проблемной книги активируется всегда 1-й лист), на первом листе есть кнопка, которая и активирует нужный макрос. Так вот если запустить книгу и нажать на кнопку, то макрос работает без каких-либо проблем, но если зайти в книгу посмотреть сначала на кокой либо из листов (не меняя абсолютно ни чего даже не активируя ячейку) и вернуться обратно на первый лист и запустить макрос вот тут и происходит проблема. Подскажите в чём может быть причина. Проблема сохраняется на 2 ПК (win 10 и win 8.1) Office 2016 и Office 2013.

Форум листал похожей проблемы не нашёл. Есть проблемы, но там либо макрос не так работает, либо цикл (у меня его нет) либо проблема на одно пк, а на другом нет. А так что бы именно при переходе с листа на лист и обратно появлялась проблема такого я не видел.

Изменено: Anton9441 - 03.07.2018 00:54:35
Знаю что можно сделать проще, но ведь работает!
Создание отчета по неделям, Перемещение недели с листа на лист
 
Да все так как хотелось! Только там маленькая ошибка была задана подряд d и d нужно было d и d1 тогда все работает без збоев. Только если в файле 1 единстенный период и месяц тогда ошибка. Но это уже не большая проблема
Знаю что можно сделать проще, но ведь работает!
Создание отчета по неделям, Перемещение недели с листа на лист
 
Я так и думал. По этому  и подчеркнул что если это возможно. Я думаю проще так сделать, как вы говорите.
Знаю что можно сделать проще, но ведь работает!
Создание отчета по неделям, Перемещение недели с листа на лист
 
И это ваш вопрос? Да вы гений! Вы мне очень упростили задачу. А по поводу вопроса, просто я его не называл и как то не удосужился переименовать!
Может вы подскажите можно ли организовать вторую часть вопроса?
Цитата
Anton9441 написал:
Один раз в месяц (если это возможно) нужно что бы все периоды создали новый файл с названием надлежащего месяца и сохранились по указном пути.
Или это только самому?
Знаю что можно сделать проще, но ведь работает!
Создание отчета по неделям, Перемещение недели с листа на лист
 
Добрый день уважаемые знатоки! Первый файл в котором собственно и имеется макрос. Из него все данные которые вводятся в выделенный столбец, будут переноситься во второй файл (прилагаю оба файла). Но к сожалению я не могу придумать код для обработки конца недели. То есть когда во втором файле кончается  неделя то нужно создать новый лист (точную копию) назвать его ячейкой А1 (периодом) и проставить новую неделю. Но как это сделать? Один раз в месяц (если это возможно) нужно что бы все периоды создали новый файл с названием надлежащего месяца и сохранились по указном пути.  
Знаю что можно сделать проще, но ведь работает!
Пункты в примечании к ячейке
 
The_Prist, Все верно. Спасибо. Фактически так как и нужно.
Знаю что можно сделать проще, но ведь работает!
Пункты в примечании к ячейке
 
Всем огромное спасибо за помощь. Решил проблему вот так.
Код
j = 1
            For k = 0 To i - 1
            c = Cells(p, 6).Comment.Text
            If lstInputData.Selected(k) = True Then
            Cells(p, 6).Comment.Text Text:=CStr(c) & Chr(10) & CStr(j) + ". " + lstInputData.List(k, 0)
            j = j + 1
            End If
            Next k
Знаю что можно сделать проще, но ведь работает!
Пункты в примечании к ячейке
 
Юрий М, к сожалению не выходит. Так как при переходе на новый цыкл. Он заменяет старое примечание на новое (полностью). А нужно что бы добавил. Можно ли как то перед формированием текста скопировать весь что был до этого, а после вставить на строку ниже?
Знаю что можно сделать проще, но ведь работает!
Пункты в примечании к ячейке
 
Уважаемые знатоки. Подскажите как исправить код? Нужно что бы в примечание к ячейке ставились пункты 1.,2. и т.д. столько сколько пунктов выберут из ListBox
Порядок и вставку я сделал. Но ставит он только последний пункт в Коментарии заменяя все остальные. Что можно сделать что бы он переходил на новую строку не удалял предыдущий комментарий а добавлял новый.
Код
j = 1
          For k = 0 To i - 1
                If lstInputData.Selected(k) = True Then
                rngOut.CopyComments
            Cells(p, 6).Comment.Text Text:=CStr(j) + ". " + lstInputData.List(k, 0)
            j = j + 1
            End If
            Next k
Знаю что можно сделать проще, но ведь работает!
Живой поиск по объекту ListBox
 
Юрий, очень благодарен. Я сомневался что кто то сможет помочь без примера и т.д. Фактически на пальцах понять сложновато. Но вы сделали почти так как нужно, я уже до делаю его.
Знаю что можно сделать проще, но ведь работает!
Живой поиск по объекту ListBox
 
Добрый день. Подскажите как лучше организовать живой поиск по ListBox. Дело в том что есть набор пунктов которые автоматически добавляются в Листбокс значений много с листбокса могут выбирать несколько значений. То-есть При вводе первых букв например в определенном TextBox данные в ListBox фильтровались автоматически и потом можно было выбрать значение уже с отфильтрованых данных. К сожалению приложить файл нет возможности((
Знаю что можно сделать проще, но ведь работает!
Макрос на изменения формата даты
 
Sanja, Спасибо огромное решили мне вторую задачу  :)
Знаю что можно сделать проще, но ведь работает!
Макрос на изменения формата даты
 
Вот файл. Нужно что бы месяц писался на украинском.
Изменено: Anton9441 - 23.10.2015 00:20:24
Знаю что можно сделать проще, но ведь работает!
Макрос на изменения формата даты
 
Локализация русская. Если вы об этом. Excel-2016/2013 работаю и там и там
Изменено: Anton9441 - 22.10.2015 23:44:11
Знаю что можно сделать проще, но ведь работает!
Макрос на изменения формата даты
 
Цитата
Anton9441 написал:
значения которые должны объединиться и стать в ячейку А1
МВТ, Я заранее указал что все box будут стоять в одной ячейке. Значит кроме даты туда станет еще и текст. И изменятся формат будет относительно этого текста тоже.
Знаю что можно сделать проще, но ведь работает!
Макрос на изменения формата даты
 
Sanja, Что я могу приложить если данная ветка макроса начинается делаться с 0.
Ну вот что как выглядит самая ячейка . tp как задать переменную tp что бы получить дату прописью на украинском языке и которая склоняется?
Остальной код не касается всего этого. Я приношу свои извинения я читаю правила просто первый день тут еще не все понимаю что от меня хотят.
Код
Dim tb As String

Private Sub cmdOk_Click()   
    If Not IsDate(TextBox21) Then
        MsgBox "Неправильно введено дату выдачі паспорта!", vbCritical, "Помилка"
        TextBox21.SetFocus
        Exit Sub
    End If
Windows("Калькулятор Ф2.xls").Activate
    Worksheets("Акт Форма 2").Unprotect Password:="********"
    Worksheets("Договір Пуск").Unprotect Password:="********"
    Worksheets("Рахунок").Unprotect Password:="*********"
    Worksheets(Array("Акт Форма 2", "Договір Пуск", "Рахунок")).Copy

Worksheets("Договір Пуск").Activate

tp = Format(TextBox21.Value, "[$-FC22]D MMMM YYYY")
Cells(6, 1).Value = TextBox19 + " № " + TextBox20 + " від " + tp + " року," + " виданий " + TextBox22

Windows("Калькулятор Ф2.xls").Activate
    Worksheets("Акт Форма 2").Protect Password:="******"
    Worksheets("Договір Пуск").Protect Password:="******"
    Worksheets("Рахунок").Protect Password:="*********"
    Worksheets("Прейскурант").Activate
    ActiveWorkbook.Save

Изменено: Anton9441 - 22.10.2015 23:33:50
Знаю что можно сделать проще, но ведь работает!
Макрос на изменения формата даты
 
Wolchau, Подскажите что изменить что бы был именно текст на украинском языке.
К сожалению вставляет. Но на русском :(
Код
tp = Format(TextBox21.Value, "[$-FC22]D MMMM YYYY")
Изменено: Anton9441 - 22.10.2015 23:13:56
Знаю что можно сделать проще, но ведь работает!
Макрос на изменения формата даты
 
МВТ, Дело в том что сам файл довольно большой. А мкрос можно и через Privat Sub написать я как бы все данные предоставил. Что уточнить могу все написать.

через TextBox.Change так же не выходит нужна какая то маска, а так происходит замена всего текста в txtBox и то только тогда когда кроме заданного на изменение тект больше ни чего нет. Я пробовал через If ... Then...Else  :(
Знаю что можно сделать проще, но ведь работает!
Макрос на изменения формата даты
 
МВТ,Можно ли как то поставить на txtBox формат что бы при вводе даты он автоматом ставил фомат [$-FC22]Д ММММ ГГГГ "г." и потом уже клеить его с ячейкой?
Знаю что можно сделать проще, но ведь работает!
Страницы: 1 2 След.
Наверх