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

Страницы: 1
Указать в макросе ячейку с датой
 
Добрый вечер. Есть работающий код, показывающий число писем с определенным названием после определенной даты.
Можно ли в коде указать не конкретную дату и время, а ячейку в которой содержится нужная дата и время

Вот работающий код:
Код
 Public Function is_email_sent()
    Dim olApp As Object
    Dim olNs As Object
    Dim olFldr As Object
    Dim olItms As Object
    Dim objItem As Object
 
    On Error Resume Next
    Set olApp = CreateObject("Outlook.Application")
    Set olNs = olApp.GetNamespace("MAPI")
    Set olFldr = olNs.Folders("pavelpavel1981@list.ru").Folders("Отправленные")
    Set olItms = olFldr.Items

Set objItem = olItms.Restrict("[Subject] = ""test"" And [SentOn] >= ""2/02/2020 13:00"" ")

    If objItem.Count < 1 Then
        MsgBox "No. Email not found"
    Else
        MsgBox "Yes. Email found"
    End If

    Set olApp = Nothing
    Set olNs = Nothing
    Set olFldr = Nothing
    Set olItms = Nothing
    Set objItem = Nothing
End Function
В результате находит письма Yes. Email found

Если в ячейке указываю ту же дату и время и меняю строку кода
Код
Set objItem = olItms.Restrict("[Subject] = ""test"" And [SentOn] >= ""cells(1,1).value"" ")

, то выдает No. Email not found

Формат в ячейке пробовал разный (и как просто текст).
Возможно ошибка в синтаксисе.  
Автоматически продолжнть (нажать клавишу "продолжить") при ошибке обновления связей
 
Добрый день. Подскажите пожалуйста, существует ли способ автоматического нажатия на клавишу "продолжить" для ошибки обновления связей при открытии файла (когда источник найти не может для какой-то связи),

Т.е. при открытии файла ряд связей  должен обновиться (у кого источник найден), для тех, у которых источник не найден, связи не обновились, но файл при этом мог нормально открыться.

Файл у меня открывается автоматически (человек может рядом и не быть), поэтому не всегда вовремя можно нажать на кнопку продолжить. При этом файлы в источнике (на которые ссылки идут) меняются по своей системе и настроить один раз связи правильно нельзя.
Подключиться к запущенному IE и перейти по нужной ссылке, отличной от открытой в браузере
 
Добрый день. Подскажите существует ли способ методами vba подключиться к запущенному IE и перейти по нужной ссылке, отличной от открытой в браузере.

Как открыть IE и перейти на нужную ссылку много в интернете есть, а вот как подключиться к открытому браузеру и поменять адрес не нашел.
Закрыть приложение .xla макросом
 
Добрый день. Подскажите существует ли какой-то универсальный код для закрытия стороннего приложения.
Конкретно в моем случае хочу закрыть программу parser.xla с помощью макроса.
Рабочий макрос открытия программы у меня есть (на сайте разработчика он выложен), а закрытия нету.
Активация открытого окна
 
Добрый день.
В первом макросе открывается браузер (работает) . Далее выполняется рад других макросов. После нужно активировать окно (на передний план), открытое в первом макросе.
Тут не получается (макрос Active_IE).  Это возможно сделать?

Код
Public ie As Object


Sub Open_IE ()



Dim WebUrl As String
Set ie = CreateObject("InternetExplorer.Application")
ie.Visible = True
WebUrl = "https://ya.ru"
ie.Navigate WebUrl



End Sub


'Тут разные макросы

Sub Active_IE()
'не работает

ie.Activate

End Sub

Закрыть окно эксплорер
 
Добрый день. Есть задача
Открыть эксплорер - (решена и работает). Выполнять ряд действий (решено и работает). Затем закрыть эксплорер (не решено).

Суть в том, чтобы открыть эксплорер и закрыть было в разных макросах.
На макросе закрытия выдает ошибку. В чем может быть проблема, что-то не так с переменной?
Код
Public ie As Object
Sub Open_ie1()
'Макрос открыть браузер

Dim ie As Object
Dim WebUrl As String
Set ie = CreateObject("InternetExplorer.Application")
ie.Visible = True
WebUrl = "https://ya.ru"
ie.Navigate WebUrl
End Sub

'Здесь выполняются другие макросы 
Sub ie2()
'Макрос закрыть браузер
ie.Quit
End Sub
Спасибо
Удалить текст из столбца совпадающий с любым значением из другого столбца
 
Доброго дня. Обращаюсь за помощью.
Не получилось придумать формулу для следующей задачи.
Необходимо из каждой ячейки столбца А удалить лишний текст. Лишний текст - это текст совпадающий с любым значением из столбца B. Результат должен быть в столбце C.
Сделать надо именно формулой (или макрос), а не поиск с заменой, т.к. это процедура неоднократная, предполагается выполнение автоматически.

Спасибо.
отправка письма из excel
 
Добрый день. Нашел рабочий макрос по отправке сообщений из excel с помощью outlook.
В тело письма получается поставить только значение какой-то конкретной ячейки и без сохранения стилей. Если указать массив (например sBody = Range("A1:N20").Value  , то письмо приходит пустым.
Подскажите как можно поправить, чтобы в письме был полностью необходимый массив, с оформлением как в excel (если это возможно).

Ниже рабочий код для отправки письма со значением для одной ячейки A1 без сохранения стилей (необходим массив A1:N20).

Код
Option ExplicitSub mail()
Dim objOutlookApp As Object, objMail As Object
Dim sTo As String, sSubject As String, sBody As String, sAttachment As StringApplication.ScreenUpdating = False
On Error Resume Next
Set objOutlookApp = CreateObject("Outlook.Application")
objOutlookApp.Session.Logon
Set objMail = objOutlookApp.CreateItem(0) 
If Err.Number <> 0 Then Set objOutlookApp = Nothing: Set objMail = Nothing: Exit Sub

sTo = "XXXXXXXX@mail.ru" 
sSubject = "Название"
sBody = Range("A1").Value 

With objMail
.To = sTo 
.Subject = sSubject 
.Body = sBody 
.Attachments.Add sAttachment
.Send 'Display, 
End With
exit_:
Set objOutlookApp = Nothing: Set objMail = Nothing
Application.ScreenUpdating = True
End Sub
Последовательное во времени выполнение команд
 
Добрый день. Не получается решить задачку. Я так понимаю мне может помочь макрос, к сожалению не владею им. Прошу посмотрите, возможно это легкая задача: последовательное во времени выполнение команд.
Например (файл во вложении):
1 этап: в ячейке A1 поставить 1-цу, в ячейке B1 поставить 0. Через 5-10 секунд копировать значение, вычисленное по формуле из ячейки F1 и записать в ячейку H1;
2 этап: в ячейке A1 поставить 0, в ячейке B1 поставить 1-цу. Через 5-10 секунд копировать значение, вычисленное по формуле из ячейки F1 и записать в ячейку H2.

Спасибо.
Копирование ячеек с потерей связи
 
Добрый день. Подскажите возможны ли автоматические способы копирования ячеек типа 1 в ячейки типа 2 таким образом, чтобы значения в типе 2 поменялись бы только один раз (при определенном условии) и далее не менялись.

Например в ячейках типа 2 появляются значения, равные значениям в ячейках типа 1, после того как значение в типе 1 стал больше 0,
и более в ячейках типа 2 значения чтоб не менялись (даже если потом в типе 1 обратно вернуть 0)

т.е. копировать в ячейку если исходное значение более 0 и больше после этого, чтоб она не зависела от исходного значения (теряла связь с ним)



Спасибо.
Обновить связи во всех файлах выбранной папки.
 
Добрый день всем. Очередная задача, для меня не подъемная. Возможно, кто-то подскажет. Видимо, тоже макросом решается.

Есть файлы более сотни, в них связи, друг с другом. Один из файлов я должен изменить.
Но чтобы обновить связи нужно каждый файл открыть. Файлы очень тяжелые (по 30 мб)- очень долго открываются - не реально для меня в итоге.
Возможно ли написать макрос, в котором выбрал папку с файлами и все файлы что в данной папке обновили связи. Или из-за веса файлов там будет просто ошибку выдавать?
Спасибо.
Замена слова в нескольких книгах
 
Добрый день.
Уважаемые формучане, помогите решить задачу. Сам не силен в макросах, но понимаю, что без них никак.

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

На примере двух файлов 1 и 2 (прикладываю): стоит слово rus в разных местах, надо изменить на eng.

Спасибо всем, кто откликнется.
Изменено: GAPAGAPA - 10.11.2018 18:22:42
[ Закрыто] Упорядочить значения в строках
 
Добрый день. Не получается решить вроде простую задачку.
Пример прилагаю
Исходная таблица - в ней колонки с именами и значениями для каждого имени по строкам (где-то есть, где-то нет)
В результате надо получить таблицу (в примере видно) чтобы в каждой строке по возрастанию числового значения были сначала имя чье значение, потом само значение
А те у кого нет значений их не было

после весь массив упорядочить по номеру и удалить пустые строки.
Спасибо все кто чем сможет помочь
Страницы: 1
Наверх