Матеріали форуму

Зараз обговорюють

Можна реалізувати, але буде запускатись при відкритті Outlook

Пізніше відпишусь, що вийшло


Даний код потрібно скопіювати в модуль ThisOutlookSession

Private Sub Application_Startup()
    Call delDuplicate
End Sub
Private Function delDuplicate()
Dim myFolder As MAPIFolder
Dim x As Integer, i As Integer
Dim myStr As String, Str1 As String
    Set myFolder = Application.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox).Folders("04.JIRA")
    x = 1
    For i = myFolder.Items.Count To x Step -1
        If InStr(1, myFolder.Items.Item(i).Subject, "[JIRA]", vbTextCompare) Then
            myStr = Left(myFolder.Items.Item(i).Subject, InStr(6, myFolder.Items.Item(i).Subject, ")", 0))
            If InStr(1, Str1, myStr, vbTextCompare) Then myFolder.Items.Item(i).Delete: x = x + 1
            If Len(Str1) > 0 Then Str1 = Str1 & "," & myStr Else Str1 = myStr
        End If
    Next i
    myStr = ""
    Str1 = ""
    Set myFolder = Nothing
End Function 

При кожному відкритті Outlook буде виконуватись системна подія Startup, що викличе нашу функцію delDuplicate, яка виконає всю роботу


Ставить значення по стовпці C:

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim curCell As Range, rowCount As Long
    If Target.Column = 2 Then
        rowCount = Cells(Rows.Count, "B").End(xlUp).Row
        For Each curCell In Range("B2:B" & rowCount)
            If IsEmpty(curCell.Offset(, 1)) And Not IsEmpty(curCell) Then
                curCell.Offset(, 1) = WorksheetFunction.RandBetween(CDate("01.10.1952"), CDate("06.04.2017"))
                curCell.Offset(, 1).NumberFormat = "dd.mm.yyyy"
            End If
        Next
    End If
End Sub 

Якщо треба лише для одного значення стовпця С відповідно якому було змінено значення B тоді:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column = 2 Then
        If IsEmpty(Target.Offset(, 1)) And Not IsEmpty(Target) Then
            Target.Offset(, 1) = WorksheetFunction.RandBetween(CDate("01.10.1952"), CDate("06.04.2017"))
            Target.Offset(, 1).NumberFormat = "dd.mm.yyyy"
        End If
    End If
End Sub 

Дякую, те що треба

Рахунки

webmoneyeur - E385818210641
usd - Z304643423050
uah - U354026817492
rub - R301704373231easypay80002677bitcoin1F5HRGroUtEQW9HBNbeew8iKh5KQ8vJxzw

Зворотній зв'язок

Для покращення роботи сайту надсилайте свої зауваження:
mailЗауваження
mailПропозиція

Статистика

UkrNET - поисково-информационный ресурс
Сортування:По даті
По алфавіту По відвідуваності По даті По популярності

VBA : Видалення дублікатів повідомлень з Outlook по заданому критерію

Чи може хтось допомогти мені з макросом для Outlook.

Як є зараз: в моєму Outlook створено правило згідно якого вхідні листи від Jira автоматично переміщаються з папки Inbox в папку 04.JIRA.

Кожного разу коли в запиті Jira відбувається будь-яка активність (новий коментар, зміна статусу, зміна відповідального, тощо) генерується емейл для усіх, хто в даний момент підписаний під інформування по цьому запиту. Таким чином якщо до запиту...


view231dislike0 avatartasofix clock 2017-04-12 21:22

VBA : Генератор випадкових дат в порожні клітинки

Доброго вечора, допоможіть, будь ласка, створити макрос, який би вставляв випадкову дату в заданому діапазоні в порожні клітинки стовпця C, але лише якщо в колонці B є дані.

Тобто, якщо в стовпці B є дані, але осередок порожній, то там може з'явитися випадкова дата.

Типу такої формули:

=СЛУЧМЕЖДУ("01.10.52";"06.04.17")

але в порожні клітинки повинні потрапляти значення, а не формула, яка змінює числа при кожній дії з осередками


view260dislike0 avatartasofix clock 2017-04-06 10:26

Про нас

"Programmers World" розроблено з метою полегшення в освоєнні навичок програмування, та поширення матеріалів з сфери ІТ Українською мовою.

Кожен бажаючий може безкоштовно користуватися ресурсами сайту, щоб:

- Вивчати теоретичні аспекти мов програмування

- Переглядати практичне застосування теорії при виконанні різних міні проектів з відкритим кодом

- Розміщати свої завдання на форумі для допомоги в їх реалізації, або готового коду який може бути корисний іншим користувачам

- Спілкуватись з іншими користувачами та обмінюватись досвідом

Сайт функціонує на безопланій основі та ентузіазмі розробника, якщо Ви бажаєте долучитись до розвитку даного проекту то можете пожертвувати кошти на рахунки розміщені в блоці "Допомога сайту".

Сайт

Зареєстровані користувачі можуть скористатися системою діалогів, в профілі користувача, для отримання потрібної інформації. Написати!

Також Ви можете використати форми відправки Зауважень та Пропозицій.


Електронна пошта

Ви можете звертатись на нашу поштову скриньку site.programmersworld@gmail.com

www.000webhost.com